パスのコンテキストで「〜」(Tilde)を使用するにはどうすればよいですか?

StackOverflow https://stackoverflow.com/questions/3488603

  •  28-09-2019
  •  | 
  •  

質問

私はWebアプリケーション開発Noobです。ファイルを開いて読み取る関数があります。残念ながら、テストサーバーと生産サーバー間のディレクトリ構造は異なります。 「〜に対するパスを使用する」と言われました。しかし、「〜」にリソースを見つけることができませんでした!

パスのコンテキストでTilde文字を使用するにはどうすればよいですか?

編集:これはPythonにあります。使用して問題を修正しました os.path.expanduser( '〜/path/in/home/area').

役に立ちましたか?

解決

それはあなたです $HOME var in unix、通常はそうです /home/username.

「あなたの家」は、次のようなコマンドを実行しているユーザーの家を意味します cd ~/MyDocuments/cd /home/user_executing_cd_commnd/MyDocuments

他のヒント

シェルスクリプトを書いている場合、またはの価値を代用することを知っている他の言語を使用していない限り $HOME にとって ~, 、ファイルパスのチルドには特別な意味がなく、他の非専門的な特性として扱われます。

シェルスクリプトを書いている場合、シェルは、議論の最初のキャラクターとして発生しない限り、チルドを解釈しません。言い換えると、 ~/file となります /path/to/users/home/directory/file, 、 しかし ./~/file 文字通り解釈されます(すなわち、 " file のサブディレクトリで . 呼び出されました ~").

URLで使用されている、ユーザーのホームディレクトリの速記としてのチルドの解釈(例: http://www.foo.org/~bob)UNIXから借りた大会です。実装は完全にサーバー固有のため、Webサーバーのドキュメントを確認して、特別な意味があるかどうかを確認する必要があります。

ファイル名にPathLibを使用している場合は、WindowsとLinuxの両方で使用できます(Windowsの回答のためにここに来ました):

python from pathlib import Path p = Path('~').expanduser() print(p)

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top