kzen.dev
  • 質問
  • タグ
  • ユーザー
通知:
報酬:
登録
登録すると、質問に対する返答やコメントが通知されます。
ログイン
すでにアカウントをお持ちの方は、ログインして新しい通知を確認してください。
追加された質問、回答、コメントには報酬があります。
さらに
ソース
編集
Akshay Patel
Akshay Patel
質問

"find: `-exec'" を使用するときに引数がありません。

このコマンドを実行しています。

~/shell_temp$ find . -type f -name "IMAG1806.jpg" -exec rm -f {}\

を実行したところ、以下のような出力が得られました。

> IMAG1806.jpg

Error:
find: missing argument to `-exec'

カレントディレクトリから任意のファイルを検索し、-execで削除するための正確なコマンドは何ですか?

12 2015-04-18T19:33:16+00:00 2
 Braiam
Braiam
編集された質問 19日 4月 2015 в 12:58
Ubuntu
command-line
find
 heemayl
heemayl
18日 4月 2015 в 7:36
2015-04-18T19:36:04+00:00
さらに
ソース
編集
#38382689

最後の ; を見逃しています({} と ; の間にもスペースがあります)。正しいコマンドは

find . -type f -name "IMAG1806.jpg" -exec rm -f {} \;

は find の -exec 述語の終わりを表します。

そうしないと、シェルは ; を find コマンド全体の終わりとして扱い、find は同じエラーを投げることになります。また、';'の代わりに ' を使用することもできます。

あなたは最後に `を使っていますが、これはシェルがPS2(>で示される) を通して入力を受け続けることを示しています。あなたが再びIMAG1806.jpg` とタイプしたので、コマンド全体は次のようになります。

find . -type f -name "IMAG1806.jpg" -exec rm -f {}IMAG1806.jpg

IMAG1806.jpgが最後にあり、exec述語が閉じておらず、{}と ``command; の間にスペースがないことから、このコマンドは全く有効なコマンドではないことがわかります。

 heemayl
heemayl
編集した答え 18日 4月 2015 в 8:30
29
0
Burhan Khalid
Burhan Khalid
19日 4月 2015 в 4:47
2015-04-19T04:47:21+00:00
さらに
ソース
編集
#38382690

シンプルに

find . -type f -name 'IMAGE1806.jpg' -delete

man ページから。

Delete files; true if removal succeeded.  If the removal failed,
an  error message is issued.  If -delete fails, find's exit sta‐
tus will be nonzero (when it eventually exits).  Use of  -delete
automatically turns on the -depth option.
7
0
質問の追加
カテゴリ
すべて
技術情報
文化・レクリエーション
生活・芸術
科学
プロフェッショナル
事業内容
ユーザー
すべて
新しい
人気
1
Ilya Smirnov
登録済み 1日前
2
Денис Васьков
登録済み 2日前
3
Dima Patrushev
登録済み 4日前
4
sirojidddin otaboyev
登録済み 1週間前
5
Елена Гайдамамакинат
登録済み 1週間前
ID
JA
© kzen.dev :年
ソース
askubuntu.com
ライセンス cc by-sa 3.0 帰属