<p data-ke-size="size16">가끔 터미널에서 작업을 할 때 bash 로 작성하기에는 짜증나고 python 으로 하면 금방 처리되는 경우가 있습니다.</p>
<p data-ke-size="size16"> </p>
<p data-ke-size="size16">파이썬 명령이 길어지는 경우 파일로 작성해서 터미널에서 실행하면 가장 간단한데, 가끔 파일 자체를 작성할 수 없는 경우가 있습니다.</p>
<p data-ke-size="size16"> </p>
<p data-ke-size="size16">이런 경우 터미널에서 python -c '파이썬 명령들' 로 실행을 할 수 있는데 단순 한줄짜리 명령들은 세미콜론 ; 을 사용해서 여러 명령을 입력할 수 있었는데 if else 등은 할 줄 몰라서 못했었습니다.</p>
<p data-ke-size="size16"> </p>
<p data-ke-size="size16">그냥 대충 써보면 개행이 잘못되었다든지 문법이 틀렸다든지의 오류가 발생했었습니다.</p>
<p data-ke-size="size16">인터넷을 뒤져 찾아낸 방법은 python -c $"파이썬 명령1\n파이썬 명령2\n..." 형태로 쓰면 정상적으로 실행되는 것을 확인할 수 있었습니다.</p>
<p data-ke-size="size16"> </p>
<p data-ke-size="size16">예를 들면</p>
<pre id="code_1696579368949" class="python" data-ke-language="python" data-ke-type="codeblock"><code>if True:
print('yes')
else:
print('no')</code></pre>
<p data-ke-size="size16">와 같은 명령은</p>
<pre id="code_1696579421453" class="bash" data-ke-language="bash" data-ke-type="codeblock"><code>python3 -c $'if True:\n print(\'yes\')\nelse:\n print(\'no\')'</code></pre>
<p data-ke-size="size16">와 같이 실행할 수 있습니다.</p>
<p data-ke-size="size16"> </p>
<p data-ke-size="size16">참고로 "" 은 파이썬 명령 안에서는 써도 상관없는데 전체 명령 감싸는 것을 작은 따옴표로 하는 $'' 대신 큰 따옴표 $"" 로 쓰는 것은 안됩니다.</p>
<p data-ke-size="size16">해보시면 아시겠지만 많은 오류가 발생합니다. shell 에서 '' 로 둘러쌓인 문장 안의 특수문자는 해석을 하지 않는데 "" 로 둘러쌓인 특수문자는 자꾸 해석이 되어 문제가 생깁니다.</p>
<p data-ke-size="size16">꼭 전체 명령 감싸는 것은 $'' 로만 해야 합니다.</p>
↧