GNU/Linux >> Belajar Linux >  >> Linux

Satu Liner Untuk Memeriksa Ada File?

Pertanyaan ini sudah memiliki jawaban di sini :Skrip shell memeriksa apakah file ada?

(1 jawaban)
Tutup 2 tahun yang lalu.

Tujuan:Memeriksa keberadaan file .tgz cadangan yang berisi tanggal hari ini; output 1 untuk OK, 0 untuk tidak ada file.

Saya seorang pengisap untuk satu liners
Misalnya di PHP (dan hampir mirip di Javascript), dalam berbagai skenario saya suka melakukan sesuatu seperti

<?php
echo (date("d")==1)?"Monday":"Not Monday";
?>

Apakah ada sintaks serupa di Bash? Saya tahu cara memeriksa keberadaan file biasa menggunakan -f FILENAME, saya hanya ingin perintah untuk mencetak 1 atau 0

Jawaban yang Diterima:

Anda cukup melakukan ini :

#to check if it's a regular file
[ -f "/you/file.file" ] && echo 1 || echo 0
#to check if a file exist
[ -e "/you/file.file" ] && echo 1 || echo 0

Dalam shell karakter ini [ berarti tes, -e jika file ada ] akhir pengujian && jika perintah kembali benar jalankan perintah setelahnya, || if command return false, jalankan perintah setelahnya.
Ini akan berfungsi di shell dan bash


Linux
  1. Bagaimana Cara Memeriksa Kemajuan Running Cp?

  2. Periksa database untuk korupsi

  3. Bagaimana saya bisa memeriksa file yang ada dan menjalankan perintah jika tidak?

  1. Bagaimana cara memeriksa sintaks sudoers

  2. Menemukan konten dari satu file di file lain

  3. Nonaktifkan pemeriksaan transaksi yum untuk konflik file

  1. Hapus Semua File/direktori Kecuali Satu File?

  2. Bash Script:Periksa Apakah File Adalah File Teks?

  3. Periksa apakah jenis/ekstensi file tertentu ada di direktori