存在するときにディレクトリが存在しないことを示すcpコマンド

メフォロス

私はbashスクリプトを書いていて、その中で次のようなことをしています。

#!/bin/sh
read -p "Enter target directory: " target_dir
cp some/file.txt $target_dir/exists/for/sure/

このシェルスクリプトを実行すると、次のように表示されて入力されます。

./my_script.sh
Enter target directory: ~/my_dir

しかし、エラー/出力が表示されます。

cp: directory ~/my_dir/exists/for/sure/ does not exist

そして、私が明らかにしようとしているように、そのディレクトリは100%存在します。つまり、エラーを受け取らずに次を実行できます。

cd ~/my_dir/exists/for/sure/

何が起きてる?

pLumo

問題は、それ~が文字通りに取得され、の入力として入力したときに展開されないことですread

試して:

$ read target
~
$ ls $target
ls: cannot access '~': No such file or directory

(注、周りの引用符~


これを使って:

eval target=$target # unsafe

以上ですが、拡張するだけ~です:

target="${target/#\~/$HOME}"

またはさらに良いことに、そもそも変数などを入力しないでくださいread

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

cpコマンドを使用するときにディレクトリを指定します

分類Dev

ディレクトリが存在しないときにphpスクリプトを実行する方法は?

分類Dev

realpath は私のディレクトリが存在しないことを示していますが、存在します

分類Dev

ディレクトリが存在しない場合でも、ファイルをディレクトリに移動するコマンド

分類Dev

適切なブランチに複数のディレクトリが存在することを確認する

分類Dev

VueJS:コンパイラエラーは、このプロパティを介してアクセスするときにデータプロパティが存在しないことを示します

分類Dev

ターゲットディレクトリが存在する場合にコマンドcp-rsfを使用してソースディレクトリをコピーする

分類Dev

cpコマンドがディレクトリ全体をコピーしないのはなぜですか?

分類Dev

Powershell:存在する場合はファイル拡張子が存在するディレクトリを再帰し、コマンドを実行しない場合はカンマを書き出す

分類Dev

ddコマンドは十分なディスク容量がないことを示しています-ラズベリーパイ用にSDカードをフォーマットしようとしています

分類Dev

空のディレクトリを処理するためのcpコマンド(結果としてファイルサイズが異なります)

分類Dev

tarが不可解に存在しないディレクトリを開こうとしている

分類Dev

`mogrify-path`コマンドでディレクトリが存在しない場合はディレクトリを作成します

分類Dev

ルートディレクトリを要求するときにドメインマスキングが機能しないhtaccessリダイレクト

分類Dev

存在しない場合は、testコマンドを使用してディレクトリを作成します

分類Dev

NodeJSは、まだ存在しないディレクトリとコンテンツをコピーします

分類Dev

zipコマンドは、作業ディレクトリの外にある、存在しないターゲットを指すシンボリックリンクに関する警告「名前が一致しません」を表示します

分類Dev

実行可能コマンドが存在するディレクトリに移動します

分類Dev

mvが宛先に同じ名前のディレクトリが存在することに対処できないのはなぜですか?

分類Dev

teeコマンドを使用して、存在しないディレクトリ内のファイルに出力をリダイレクトします

分類Dev

〜から実行したときに、コマンドがディレクトリを見つけられないのはなぜですか?

分類Dev

cpまたはmvファイルを、別のディレクトリにいるときにすでに存在している同じディレクトリに配置しますか?

分類Dev

引数リストに長すぎることなく、findコマンドを使用してディレクトリのセットを削除します

分類Dev

リストオブジェクトは、コンソールが存在しないことを示すファイルを返します

分類Dev

コピーをxcopyに置き換え、存在しないディレクトリを処理する方法

分類Dev

Swift:アレイが存在する場合と存在しない場合があることを詳細ビューコントローラーに通知します

分類Dev

Django 1.6.5のSyncdbコマンドは、models.pyに新しいモデルクラスを作成しません-テーブルがすでに存在することを示します

分類Dev

Django-Migrateコマンドは、2回目のmakemigrationsが実行された後にテーブルが存在することを示しています

分類Dev

emacsで新しいファイルを作成しているときに存在しないディレクトリを作成できますか?

Related 関連記事

  1. 1

    cpコマンドを使用するときにディレクトリを指定します

  2. 2

    ディレクトリが存在しないときにphpスクリプトを実行する方法は?

  3. 3

    realpath は私のディレクトリが存在しないことを示していますが、存在します

  4. 4

    ディレクトリが存在しない場合でも、ファイルをディレクトリに移動するコマンド

  5. 5

    適切なブランチに複数のディレクトリが存在することを確認する

  6. 6

    VueJS:コンパイラエラーは、このプロパティを介してアクセスするときにデータプロパティが存在しないことを示します

  7. 7

    ターゲットディレクトリが存在する場合にコマンドcp-rsfを使用してソースディレクトリをコピーする

  8. 8

    cpコマンドがディレクトリ全体をコピーしないのはなぜですか?

  9. 9

    Powershell:存在する場合はファイル拡張子が存在するディレクトリを再帰し、コマンドを実行しない場合はカンマを書き出す

  10. 10

    ddコマンドは十分なディスク容量がないことを示しています-ラズベリーパイ用にSDカードをフォーマットしようとしています

  11. 11

    空のディレクトリを処理するためのcpコマンド(結果としてファイルサイズが異なります)

  12. 12

    tarが不可解に存在しないディレクトリを開こうとしている

  13. 13

    `mogrify-path`コマンドでディレクトリが存在しない場合はディレクトリを作成します

  14. 14

    ルートディレクトリを要求するときにドメインマスキングが機能しないhtaccessリダイレクト

  15. 15

    存在しない場合は、testコマンドを使用してディレクトリを作成します

  16. 16

    NodeJSは、まだ存在しないディレクトリとコンテンツをコピーします

  17. 17

    zipコマンドは、作業ディレクトリの外にある、存在しないターゲットを指すシンボリックリンクに関する警告「名前が一致しません」を表示します

  18. 18

    実行可能コマンドが存在するディレクトリに移動します

  19. 19

    mvが宛先に同じ名前のディレクトリが存在することに対処できないのはなぜですか?

  20. 20

    teeコマンドを使用して、存在しないディレクトリ内のファイルに出力をリダイレクトします

  21. 21

    〜から実行したときに、コマンドがディレクトリを見つけられないのはなぜですか?

  22. 22

    cpまたはmvファイルを、別のディレクトリにいるときにすでに存在している同じディレクトリに配置しますか?

  23. 23

    引数リストに長すぎることなく、findコマンドを使用してディレクトリのセットを削除します

  24. 24

    リストオブジェクトは、コンソールが存在しないことを示すファイルを返します

  25. 25

    コピーをxcopyに置き換え、存在しないディレクトリを処理する方法

  26. 26

    Swift:アレイが存在する場合と存在しない場合があることを詳細ビューコントローラーに通知します

  27. 27

    Django 1.6.5のSyncdbコマンドは、models.pyに新しいモデルクラスを作成しません-テーブルがすでに存在することを示します

  28. 28

    Django-Migrateコマンドは、2回目のmakemigrationsが実行された後にテーブルが存在することを示しています

  29. 29

    emacsで新しいファイルを作成しているときに存在しないディレクトリを作成できますか?

ホットタグ

アーカイブ