해야 할 일
home=os.path.expanduser("~")
먼저 수행 한 다음 수행해야합니다 os.path.join(home,"something")
. 는 ~
파이썬에서 텍스트로 처리하고에서와 같이 확장하지 않습니다 bash
또는 다른 포탄입니다.
$ python -c 'import os;home=os.path.expanduser("~"); os.mkdir(os.path.join(home,"something"))'
$ ls -ld ~/something
drwxrwxr-x 2 xieerqi xieerqi 4096 7月 12 21:00 /home/xieerqi/something/
그것을 제거하는 방법
이미 언급 한 방법 외에도 ~
ASCII 문자 표에서 16 진수 값을 사용할 수 있습니다. 실제로 ~
는 명령 줄에서 사용자의 홈 디렉토리로 확장되지 않습니다 (궁금한 경우 물결표가 처음에 나타날 때 단어는 사용자의 홈 디렉토리로 확장됩니다 (비교 ls ~
및 ls $'\x7e'
).
작동 방식은 다음과 같습니다.
# Make the directory
$ mkdir ./~
$ stat ./$'\x7e'
File: './~'
Size: 4096 Blocks: 8 IO Block: 4096 directory
Device: 801h/2049d Inode: 5768019 Links: 2
Access: (0775/drwxrwxr-x) Uid: ( 1000/ xieerqi) Gid: ( 1000/ xieerqi)
Access: 2017-07-12 21:05:31.382828424 -0600
Modify: 2017-07-12 21:05:31.382828424 -0600
Change: 2017-07-12 21:05:31.382828424 -0600
Birth: -
# and remove it
$ rmdir ./$'\x7e'
$ ls $'\x7e'
ls: cannot access '~': No such file or directory