파이썬을 통해 모든 파일을 다음과 같은 한 줄로 인쇄하려면 어떻게해야합니까?현재 디렉토리의 모든 파일을 인쇄하는 파이썬 한 줄자
python -c "import sys;print '>>',sys.argv[1:]" | dir *.*
파이썬으로 파이프하는 법을 특히 알고 싶습니다. -c. DOS 또는 Cygwin 응답이 허용됩니다. 당신이 파이프를 사용하려는 경우 귀하의 질문에이 같이 일부 서식을 적용하려면
파이썬을 통해 모든 파일을 다음과 같은 한 줄로 인쇄하려면 어떻게해야합니까?현재 디렉토리의 모든 파일을 인쇄하는 파이썬 한 줄자
python -c "import sys;print '>>',sys.argv[1:]" | dir *.*
파이썬으로 파이프하는 법을 특히 알고 싶습니다. -c. DOS 또는 Cygwin 응답이 허용됩니다. 당신이 파이프를 사용하려는 경우 귀하의 질문에이 같이 일부 서식을 적용하려면
y o는 데이터를 읽을 수 있습니다 에 sys.stdin을 읽어 파이썬 스크립트. 예 :
ls -al | python -c "import sys; print sys.stdin.readlines()"
내가 원하는 것은 무엇인지 분명하지 않습니다 (어쩌면 어리 석다). 혼란은 Python 스크립트에서 데이터를 파이핑하는 예에서 비롯됩니다.
python -c "import os; print os.listdir('.')"
,
python -c "import os; print '\n'.join(['>>%s' % x for x in os.listdir('.')])"
, xargs
사용
ls | xargs python -c "import sys; print '>>', sys.argv[1:]"
또는 역 따옴표를 :
를python -c "import sys; print '>>', sys.argv[1:]" `ls`
감사합니다. 어떻게 파이프하는지 알고 싶습니다. – Luis
당신은 모든 파일을 인쇄하려면 : 당신이 ">>"전에 각을 포함 할 경우에만 현재 디렉토리의 파일
find . -type f -maxdepth 1
을 인쇄하려면
find . -type f
을 line
find . -type f -maxdepth 1 | xargs -L 1 echo ">>"
"> > "및 $ 경로를 에코에서
find . -type f -maxdepth 1 | xargs -L 1 printf ">>%s\n"
이것은 모두 cygwin을 사용하고 있습니다.
+1 - 파이썬은 멋지다 (나는 팬이다).하지만 때로는 이미 작업을 수행하기 위해 만들어진 툴이있다. :-) –
정상으로 표준 입력을 읽을 어떻게 출력을 공급하기를 원한다면 당신은 길을 잘못 라운드 파이프를했다
불구하고 파이프 'dir'을 파이썬에 넣으려면 'dir'이 왼쪽에 있어야합니다.
분명히 파이썬 기본 솔루션 예 :
dir "*.*" | python -c "import sys;[sys.stdout.write('>>%s\n' % line) for line in sys.stdin]"
(당신이 블록 도입 세미콜론 후 한 줄에 성명 '에 대한'. 허용되지 않기 때문에 지능형리스트와 해킹입니다) ('os.listdir')은 실제로 더 좋습니다.
구체적으로 알고 싶습니다 방법 모든 프로그램을 알고는 점이다
이 프로그램을 통해 cobbal's answer
배관이보기의 프로그램의 관점에서 투명 볼
-c 파이썬에 파이프 표준 입력 스트림에서 입력을 얻고 있습니다.일반적으로 말하면, 쉘 명령은
65,은 표준 출력을 "자위대"를 내뿜 그래서 만약
, 그때 B는 표준 입력
파이썬 표준 입력 스트림에 "자위대"를 가져 B의 입력되는 출력을 리디렉션 sys.stdin
파이썬을 사용하는 것보다 더 좋은 방법이 될 것 같습니다 ... –
이것은 실제로 라이너에 없습니다! 빈 라인도 계산되는 코드 행에 대한 매우 까다 롭다 정의를 따르지 않으면! – hasen
정확히 무엇을하려고합니까 ?? dir *. * 이미 목록이 모두 있습니다. 그래서 요점은 무엇입니까? – hasen