Bash에 대한 인라인 댓글?
한 줄 명령어로 하나의 플래그를 주석으로 달 수 있으면 좋겠습니다.Bash는 단지 가지고 있는 것처럼 보입니다.from # till end-of-line
평.저는 다음과 같은 속임수를 보고 있습니다.
ls -l $([ ] && -F is turned off) -a /etc
못생겼지만 없는 것보다는 낫습니다.더 좋은 방법이 있습니까?
다음 항목이 작동하는 것처럼 보이지만 휴대용인지는 잘 모르겠습니다.
ls -l `# -F is turned off` -a /etc
선호하는 항목:
이것은 약간의 간접비가 있겠지만, 기술적으로 그것은 당신의 질문에 대답합니다.
echo abc `#put your comment here` \ def `#another chance for a comment` \ xyz etc
특히 파이프라인의 경우 오버헤드가 없는 보다 깨끗한 솔루션이 있습니다.
echo abc | # normal comment OK here tr a-z A-Z | # another normal comment OK here sort | # the pipelines are automatically continued uniq # final comment
저는 그냥 줄을 복사하고 원본 버전을 주석 처리하는 것이 가장 쉽고 가장 읽기 쉽다고 생각합니다.
#Old version of ls:
#ls -l $([ ] && -F is turned off) -a /etc
ls -l -a /etc
$(: ...)
조금 덜 못생겼지만, 여전히 좋지 않습니다.
다음은 다중 파이프 명령 간의 인라인 주석에 대한 솔루션입니다.
주석이 없는 코드의 예:
#!/bin/sh
cat input.txt \
| grep something \
| sort -r
파이프 주석에 대한 솔루션(도우미 함수 사용):
#!/bin/sh
pipe_comment() {
cat -
}
cat input.txt \
| pipe_comment "filter down to lines that contain the word: something" \
| grep something \
| pipe_comment "reverse sort what is left" \
| sort -r
또는 원하는 경우 도우미 기능이 없는 동일한 솔루션이 있지만 좀 더 혼란스럽습니다.
#!/bin/sh
cat input.txt \
| cat - `: filter down to lines that contain the word: something` \
| grep something \
| cat - `: reverse sort what is left` \
| sort -r
대부분의 명령에서는 임의의 순서로 인수를 지정할 수 있습니다.주석이 달린 플래그를 줄 끝으로 이동합니다.
ls -l -a /etc # -F is turned off
그런 다음 다시 켜려면 주석을 제거하고 텍스트를 제거합니다.
ls -l -a /etc -F
변수에 저장하는 것은 어떻습니까?
#extraargs=-F
ls -l $extraargs -a /etc
변수가 비어 있다는 것을 알고 있는 경우 이를 주석으로 사용할 수 있습니다.물론 비어 있지 않으면 명령어가 엉망이 됩니다.
ls -l ${1# -F 꺼짐} -a /etc
다음과 같은 명령의 일부를 비활성화하는 경우a && b
빈 스크립트를 만들었을 뿐입니다.x
길 위에 있으니 다음과 같은 일을 할 수 있습니다.
mvn install && runProject
내가 건축해야 할 때, 그리고.
x mvn install && runProject
(및 을 사용하여 시작 및 끝으로 이동)하지 않을 때.
코멘트에서 언급한 바와 같이, 이를 위한 또 다른 방법은 Bash 내장형입니다.:
대신에x
:
$ : Hello world, how are you? && echo "Fine."
Fine.
는 것 같습니다.$(...)
에서 살아남지 못합니다.ps -ef
.
제 시나리오는 바로 그 프로세스를 식별하는 데 사용할 수 있는 더미 파라미터를 갖는 것입니다.저는 주로 이 방법을 사용하지만, 그 방법이 어디에서나 가능한 것은 아닙니다.예를들면,python program.py
는 것과 같은
mkdir -p MyProgramTag;python MyProgramTag/../program.py
그MyProgramTag
시작된 프로세스를 식별하기 위한 태그입니다.
언급URL : https://stackoverflow.com/questions/2524367/inline-comments-for-bash
'programing' 카테고리의 다른 글
결과를 "찾는" 가장 좋은 방법은 무엇입니까? (0) | 2023.04.27 |
---|---|
모든 선택 항목 사이의 차이점은 무엇입니까? (0) | 2023.04.27 |
Zure 웹 앱 배포 후 건설 중인 사이트 메시지를 가져오는 중 (0) | 2023.04.27 |
HTML 중첩 목록을 만드는 올바른 방법은 무엇입니까? (0) | 2023.04.27 |
Bash 배열의 요소를 구분된 문자열로 결합하려면 어떻게 해야 합니까? (0) | 2023.04.27 |