대학교 때, IBM RS/6000, AIX 4.3.1 으로 학과 서버 운영을 맡았던 때가 있었습니다.
그 땐 보안 개념도 희박했던 때라 관리자 비번을 몇 명에게 알려줬는데,
실수로 누군가 /bin/cp 명령을 지워버렸습니다.
여러분들은 cp 명령없이 어떻게 cp 명령을 수행하시겠습니까?
제한사항으로 AIX OS 패키지 CD는 없었고, 네트워크는 사용 가능한 상태였습니다.
cat file > dest_file 이면 되지 않을까요?
하지만 저만 cp 명령을 못 쓰던게 아니니까요. ^^
저는 그 방법으로 복사했지만,
그 후에 진짜 cp 명령을 만들어야 했어요...
무서웠던 것은 그 때 당시 컴파일러가 없었어요. TㅁT
혹시 "cat file > dest_file 을 하는 스크립트"를 짜서
echo 스크립트 > cp
하셨나요?
하지만, cp 의 모든 기능을 스크립트로 구현하는 것은 정말 힘들죠. :)
만약 cp * some-directory/ 라고 한다면???
tar 나 cpio 도 도움이 될 것 같네요.
되면 한다! / feel no sorrow, feel no pain, feel no hurt, there's nothing gained.. only love will then remain.. 『 Mizz 』
CPIO를 이용해서 바로 만들어서 썼을지도 모르겠어요. ^^
디렉터리 복사와 파일 복사를 모두 하기 위해서는 tar 와 cpio 를 이용한 방법이 제일 심플했는데 말이죠.
문제를 잘못 읽었네요 ㅋㅋ
지금도 있을지 모르겠지만...
http://www.bullfreeware.com 에서 필요한 소프트웨어를 다운로드 받을 수 있었죠. :)
제일 심플한 방법 중 하나였는데, 그 사이트를 알아내기까지는 꽤 오랜 시간이 흘렀었죠.
AIX 4.3.1 따위는 이젠 지원하지 않는가보네요. 없어요... ||orz
PPC 1세대 32bit CPU 여서 e603 이었던가, 그랬는데...
이젠 아키텍쳐도 드물어졌지만, AIX 4.3.1 커널 시스템 API 에 맞는 패키지란 없을지도...
수정했는데 답글이달렸네요 ^^; 원래 글은 "ftp나 wget으로 cp를 받아오자" 였습니다.
그 땐 플랫폼 개념이 희박하던 때라...
Ultra Sparc Sun OS 에서 cp 명령을 받아다가 붙여놓고 실행하려 했다는거...
#!/usr/bin/python import os
if len(sys.argv)<3: print "Usage: cp [source] [destination]\n" exit()
os.system("cat "+sys.argv[1]+" > "+sys.argv[2])
네요. 그리고 제대로 된 해결책을 찾아 떠나기...
#!/usr/bin/env python import os import sys import shutil try: source = sys.argv[1] destination = sys.argv[2] except IndexError: print "Usage: cp.py [source] [destination]" sys.exit() try: shutil.copy2(source, destination) except (IOError, os.error): print "File cannot be copied."
그리고 보다 pythonic 하게 하려면 if 문(LBYL)보다는 try ... except(EAFP)를 쓰세요.
그 때 Python 이라도 있었다면...
거의 뭐... 반칙 아니었을까 싶어요. ㅇㅅㅇ;;;
#!/usr/bin/env perl use File::Copy; $ARGC = @ARGV; if ($ARGC < 2) { print "Usage: cp.pl [source] [destination]\n"; exit $ARGC; } $filetobecopied = @ARGV[0]; $newfile = @ARGV[1]; copy($filetobecopied, $newfile) or die "File cannot be copied.";
저도 perl로 했다능... ㅇㅅㅇ;;;
$ man dd
NAME dd - convert and copy a file
.....
를 이용하여 cp명령과 동일한 interface를 가지는 스크립트를 짤 것 같습니다.
http://unixhelp.ed.ac.uk/CGI/man-cgi?cp
무립니다. ㅇ>-<
랄까, 생각보다 많이 복잡하군요
통신보안~ 자병장님 보급관님이 찾으시지 말입니다~ 당장 aix 복구 해놓으라지 말입니다~
life is only one time
도망 =3 =33
그래도 rm -rf / bin/bash보다는 훨씬 낫네요...
그나마 가장 비슷하지 않나요?
---------------------------------------------------------------------------------------- Don't Feed the Trolls! ----------------------------------------------------------------------------------------
gnu나 BSD에서 소스를 가져와서 컴파일하는 게 가장 빠를지도 모르겠네요.
---- Let's shut up and code.
cat file > dest_file 이면 되지
cat file > dest_file 이면 되지 않을까요?
저도 처음 시도한 것은 그것이었어요.
하지만 저만 cp 명령을 못 쓰던게 아니니까요. ^^
저는 그 방법으로 복사했지만,
그 후에 진짜 cp 명령을 만들어야 했어요...
무서웠던 것은 그 때 당시 컴파일러가 없었어요. TㅁT
혹시 "cat file > dest_file 을 하는
혹시 "cat file > dest_file 을 하는 스크립트"를 짜서
echo 스크립트 > cp
하셨나요?
비슷합니다.
하지만, cp 의 모든 기능을 스크립트로 구현하는 것은 정말 힘들죠. :)
만약 cp * some-directory/ 라고 한다면???
음 ..
tar 나 cpio 도 도움이 될 것 같네요.
되면 한다! / feel no sorrow, feel no pain, feel no hurt, there's nothing gained.. only love will then remain.. 『 Mizz 』
저도 제대로 cpio 를 알았더라면...
CPIO를 이용해서 바로 만들어서 썼을지도 모르겠어요. ^^
디렉터리 복사와 파일 복사를 모두 하기 위해서는 tar 와 cpio 를 이용한 방법이 제일 심플했는데 말이죠.
..
문제를 잘못 읽었네요 ㅋㅋ
AIX 를 위한 Free Software 사이트가 있긴 있더라구요...
지금도 있을지 모르겠지만...
http://www.bullfreeware.com 에서 필요한 소프트웨어를 다운로드 받을 수 있었죠. :)
제일 심플한 방법 중 하나였는데, 그 사이트를 알아내기까지는 꽤 오랜 시간이 흘렀었죠.
다시 찾아보니...
AIX 4.3.1 따위는 이젠 지원하지 않는가보네요. 없어요... ||orz
PPC 1세대 32bit CPU 여서 e603 이었던가, 그랬는데...
이젠 아키텍쳐도 드물어졌지만, AIX 4.3.1 커널 시스템 API 에 맞는 패키지란 없을지도...
수정했는데 답글이달렸네요 ^^; 원래 글은 "ftp나
수정했는데 답글이달렸네요 ^^;
원래 글은 "ftp나 wget으로 cp를 받아오자" 였습니다.
저도 그걸 시도했더랬습니다.
그 땐 플랫폼 개념이 희박하던 때라...
Ultra Sparc Sun OS 에서 cp 명령을 받아다가 붙여놓고 실행하려 했다는거...
제일 먼저 떠오르는 건...
#!/usr/bin/python
import os
if len(sys.argv)<3:
print "Usage: cp [source] [destination]\n"
exit()
os.system("cat "+sys.argv[1]+" > "+sys.argv[2])
네요. 그리고 제대로 된 해결책을 찾아 떠나기...
파이썬 표준 라이브러리에 파일 복사 함수가 있습니다.
그리고 보다 pythonic 하게 하려면 if 문(LBYL)보다는 try ... except(EAFP)를 쓰세요.
아마 그 때 당시 python이 있었다면...
그 때 Python 이라도 있었다면...
거의 뭐... 반칙 아니었을까 싶어요. ㅇㅅㅇ;;;
그 당시 python이 없었다면, perl로 하면 되죠.
정답!
저도 perl로 했다능... ㅇㅅㅇ;;;
$ man dd NAME dd -
$ man dd
NAME
dd - convert and copy a file
.....
를 이용하여 cp명령과 동일한 interface를 가지는 스크립트를 짤 것 같습니다.
http://unixhelp.ed.ac.uk/CGI/
http://unixhelp.ed.ac.uk/CGI/man-cgi?cp
무립니다. ㅇ>-<
랄까, 생각보다 많이 복잡하군요
...
통신보안~
자병장님 보급관님이 찾으시지 말입니다~
당장 aix 복구 해놓으라지 말입니다~
life is only one time
최근엔 클러킹중...
도망 =3 =33
그래도 rm -rf / bin/bash보다는 훨씬
그래도 rm -rf / bin/bash보다는 훨씬 낫네요...
mv?
그나마 가장 비슷하지 않나요?
----------------------------------------------------------------------------------------
Don't Feed the Trolls!
----------------------------------------------------------------------------------------
gnu나 BSD에서 소스를 가져와서 컴파일하는 게
gnu나 BSD에서 소스를 가져와서 컴파일하는 게 가장 빠를지도 모르겠네요.
----
Let's shut up and code.