GNU/Linux >> Belajar Linux >  >> Linux

Bagaimana cara memeriksa apakah perintah find tidak menemukan apa pun?

Hitung jumlah keluaran baris dan simpan dalam variabel, lalu uji:

lines=$(find ... | wc -l)
if [ $lines -eq 0 ]; then
...
fi

Anda ingin menggunakan temukan perintah di dalam sebuah kondisi if , Anda dapat mencoba liner yang satu ini :

 [[ ! -z `find 'YOUR_DIR/' -name 'something'` ]] && echo "found" || echo "not found"

contoh penggunaan :

 [prompt] $ mkdir -p Dir/dir1 Dir/dir2/ Dir/dir3                 
 [prompt] $ ls Dir/
 dir1  dir2  dir3
 [prompt] $ [[ ! -z `find 'Dir/' -name 'something'` ]] && echo "found" || echo "not found"
 not found
 [prompt] $ touch Dir/dir3/something
 [prompt] $ [[ ! -z `find 'Dir/' -name 'something'` ]] && echo "found" || echo "not found"
 found

Keluar 0 mudah ditemukan, keluar>0 lebih sulit karena biasanya hanya terjadi dengan kesalahan. Namun kami dapat mewujudkannya:

if find -type f -exec false {} +
then
  echo 'nothing found'
else
  echo 'something found'
fi

Linux
  1. Cara Menemukan Koneksi SSH Aktif di Linux

  2. Cara Menggunakan Perintah Grep untuk Menemukan Teks di File

  3. Bagaimana Mengintegrasikan Perintah Mv Setelah Menemukan Perintah?

  1. Cara Memeriksa Apakah Sistem Linux 32 bit Atau 64 Bit

  2. echo:perintah tidak ditemukan

  3. Cara mengecualikan direktori di find . memerintah

  1. Cara mengaudit izin dengan perintah find

  2. Bagaimana Menemukan Proses Dengan Deskriptor File Maksimum?

  3. temukan:perintah tidak ditemukan