Saya belum memasukkan apa pun Menampar, dan saat saya memasuki dunia Python yang indah, saya sedikit lupa tentang teman lain yang sangat membantu saya.
Di sini saya meletakkan sesuatu untuk penggemar Bash, seperti judulnya ... Saya akan menunjukkan kepada Anda cara memeriksa apakah file atau folder ada di sistem, hanya menggunakan: if
Kami akan membuat file .sh dan memberinya izin eksekusi, untuk ini, cukup letakkan perintah berikut di terminal:
tes sentuh.sh && chmod + x test.sh
Ini yang dia lakukan adalah membuat file (tes sentuh.sh) dan juga memberi Anda izin eksekusi (chmod + x test.sh)
Kemudian mari kita tulis yang berikut ini di dalamnya:
if [ -d /opt/ ];
then
echo "Sí, sí existe."
else
echo "No, no existe"
fi
Apa ini?
Sederhana 😀
Di baris pertama - » jika [-d / opt /];
Di sini kami bertanya, apakah direktori / opt / ada? Ya direktori / folder, karena -d Berarti direktori atau folder.
Kemudian jika ada, kami akan mencetak di terminal «Ya, itu memang ada.»(Ini adalah baris 2 dan 3)
Jika tidak dan / opt / TIDAK ada, maka kami akan mencetak «Tidak, itu tidak ada»(Baris 4 dan 5)
Kemudian di baris terakhir (nomor 6) kita tutup if dan itu saja.
Lakukan pengujian, ini akan menunjukkan kepada Anda bahwa / opt / memang ada.
Jika Anda ingin saya menunjukkan teks lain (yang tidak ada) ubah / opt / untuk folder lain yang tidak ada di sistem Anda, misalnya: / asd /
Seperti yang Anda lihat, -d membantu kita untuk mengetahui apakah direktori tersebut ada, nah sekarang jika kita mengubah -d menjadi -f untuk memeriksa keberadaan file (-d = direktori, -f = file / file)
Sebagai contoh:
if [ -f /etc/hosts ];
then
echo "Sí, sí existe."
else
echo "No, no existe"
fi
Berikut adalah daftar opsinya:
-d - »Periksa apakah ada direktori tertentu
-f - »Periksa apakah ada file tertentu
-w - »Periksa apakah file tertentu memiliki izin menulis
-x - »Periksa apakah file tertentu memiliki izin eksekusi.
Dan tidak banyak lagi yang bisa ditambahkan 🙂
Saya tahu ini akan sangat berguna dan menarik bagi mereka yang suka membuat program di Bash 😉
salam
Cara lain untuk melakukannya tanpa if… then..else:
test -f /etc/hosts && elcomando
Atau juga
test ! -f /etc/hosts && echo "no se encontró el archivo"
Dll
Benar 😀
… O_O… Apakah Anda Hugo, Hugo dari Kuba? … Menggunakan Windows8, WTF !!!
Ya, saya semakin akrab dengan OS ini dan jika saya harus terus terang, satu-satunya hal yang menurut saya berguna adalah copy manager, jika tidak, saya pribadi merasa sakit, terutama antarmuka hybrid dan aplikasi metro-nya. Saya suka kurang dari Vista dan 7 (meskipun sedikit lebih efisien dari ini), yang saya juga tidak suka. Yang saya gunakan hanya untuk memainkan NFS13 dan Skyrim, tetapi OS ini memakan banyak ruang sehingga saya harus menghapus partisi Linux saya [snif].
Namun, untuk ketenangan pikiran Anda, saya akan memberi tahu Anda bahwa sehari sebelum kemarin saya mengunduh Arch ISO untuk Januari dan saya berencana untuk memberikan sedikit tes dalam versi x86-64, segera setelah saya mendapatkan repo (maukah Anda memilikinya?). Sekarang karena saya melihatnya menggunakan paket yang ditandatangani secara default, itu memberi saya lebih percaya diri untuk menyelami.
Dan ayah saya juga memberi tahu saya bahwa dia akan mengirimi saya Sony Xperia, yang ingin saya manfaatkan untuk mempelajari beberapa pemrograman untuk Android, yang merupakan permintaan yang menunggu keputusan. Jadi tenanglah, saya belum pergi ke sisi gelap kekuatan, buahahahaha 😉
uji manusia
Tentu.
Wenas! ..
Kita bisa membuat yang sama .. ..tapi direktori dilewatkan sebagai parameter ..
if [ -d $1 ];
then
echo "Sí, sí existe."
else
echo "No, no existe"
fi
Dan kami menyebutnya sebagai:
./test.sh / opt /
Salam..
JIKA bukan siklus xD
Ini cocok untuk saya seperti sarung tangan untuk naskah yang saya lakukan. Apakah valid menggunakan wildcard? Misalnya, untuk mencari tahu apakah ada .mp4s, jalankan sesuatu di sana.
jika [-f * .mp4];
...
Ya, ini sepenuhnya valid ..
Bahkan melalui parameter .. "* .mp4"
Misalnya
if [ -f $1 ];
then
rm -r $1
else
ls
fi
Jika Anda menyebutnya: ./test.sh * .mp4
Jika ia menemukan file .mp4, itu akan menghapusnya ... ... tetapi tidak mencantumkan file dalam direktori itu ...
Terima kasih atas umpan balik dan tipnya! 🙂
Anda melewatkan f xD
rm -rf $ 1
Ini lebih seru!
Hebat !!!, Setiap hari saya lebih jatuh cinta dengan Linux, Windows telah diturunkan ke beberapa sudut gelap Hard Drive saya, yang akan dihapus untuk memberi jalan pada terang Linux.
Luar biasa! .. ..lalu ambil langkah berikutnya .. dan keluarkan ..
6 bulan yang lalu kira-kira. Saya hanya memiliki GNU / Linux di semua mesin saya dan saya tidak membutuhkan lebih .. ..bukan W $ .. atau Wine .. ..dan saya sangat senang seperti itu ..
Dan saya menginfeksi lingkungan saya .. karena semua orang melihat saya dengan Arch saya, cepat, efisien dan bahagia .. ..dan mereka meminta saya untuk menginstal Linux .. ..yeah! .. 😀
Anda juga dapat memeriksanya untuk berbagai ekstensi, Anda dapat menggunakan sesuatu seperti
#! / bin / bash
Direktori = $ HOME / Unduhan
jika [$ Directory]; kemudian
echo "Berikut adalah Daftar Jenis File:"
echo "mp1, mp2, mp3, mp4, wav, flac, flaad, aud, midi"
ls {* .mp ?, *. wav, *. fla, *. aud * .midi}
fi
menggunakan {} memungkinkan Anda menentukan beberapa ekstensi dalam kasus ini, penggunaan "?" , adalah wildcard, yang memungkinkan Anda untuk mengambil "Karakter Apa Pun".
Saya harap Anda belajar
Saya merekomendasikan perintah find [directory] [search_pattern] –exec [command] {} \
Tidak berhasil, saya meletakkan file-file ini di direktori:
AB20160420.TXT
AB20160421.TXT
AB20160422.TXT
AB20160423.TXT
AB20160424.TXT
AB20160425.TXT
search.sh
#! / bin / bash
PATH = / tmp / TEST
cd $ ROUTE
ls -la | awk '{print »« $ 9}'
jika [[-f AB.TXT]]; kemudian
echo »Masukkan IF jika ada AB.TXT "
fi
jika [-f AB20160422.TXT]; kemudian
echo "masukan untuk file AB tertentu"
fi
ketika saya meletakkan [-f AB.TXT] memberikan kesalahan
ketika saya meletakkan [[-f AB.TXT]] tidak memberikan kesalahan tetapi tidak dapat menemukan file
ini hanya berfungsi ketika saya meletakkan file tertentu, misalnya:
jika [-f AB20160422.TXT]; kemudian
Saya tidak bisa membuatnya berfungsi dengan wildcard * atau?
#! / usr / bin / env bash
#.encoding = utf-8.
KONTSTAN
EXIT_OK = 0
EXIT_BAD = 66
BOLD = »\ 033 [1m»
NC = »\ 033 [0m»
MERAH = »\ 033 [31m»
jika [! "$ 1"];
kemudian
echo "tidak ada parameter"
keluar $ EXIT_BAD
fi
cd "$ 1"
berkas = »ls -h1 $ 1»
untuk file di $ ($ files); melakukan
echo -e "Anda dapat melakukan apa saja dengan $ BOLD $ file $ nc di sini"
dilakukan
keluar $ EXIT_OK
@KZ, ceritakan lebih banyak tentang ini: "dan itu karena saya memasuki dunia Python yang menakjubkan"!
HAHAHAHA nah ... sedikit demi sedikit 🙂
Saya masih pemula di Python, saya hampir tidak punya waktu untuk mendedikasikan berjam-jam untuk itu, jadi saya lambat ya, lambat tapi pasti dalam pembelajaran saya 😀
Terima kasih banyak 😀 baru kemarin saya sedang berpikir bagaimana melakukan ini.
ini dengan ncurses bagus 🙂
dalam 1 kata… SANGAT BAIK!
Untuk waktu yang lama saya menyempurnakan skrip untuk membuat unduhan dari Internet, tetapi saya dihadapkan pada masalah mengunduh file yang saya minta 1 dan lagi tanpa dapat memverifikasi keberadaan 1ro.
Tuto yang sangat bagus.
Kontribusi yang luar biasa, disini dari Chile sangat kami hargai.
Setiap hari semakin banyak LINUX yang mengejutkan saya,
Hidup Perangkat Lunak Gratis MIERDAAAA.
melayani untuk
periksa apakah file dari direktori
Jika saya ingin memeriksa keberadaan file apa pun di jalur «/ tmp / penerima», jalankan perintah apa saja, bagaimana jadinya?
Saya akan sangat berterima kasih
salam
Sayang, dan untuk menentukan JIKA apakah file tersebut terisi penuh ???. Saya menanyakan ini karena ketika Anda mengisi file untuk transmisi, itu dapat mengambilnya bahkan dengan setengah data.
Salam dan terima kasih atas tanggapan Anda.
Saya rasa Anda juga harus menambahkan contoh, seperti "Periksa bahwa tidak ada" file "atau" direktori "seperti misalnya
untuk memeriksa bahwa itu TIDAK ada, misalnya gunakan variabel->
Direktori
#! / bin / bash
Direktori = »$ HOME / Direktori Tes»
File = »$ HOME / File Tes»
jika [! -d "$ Directory"]; kemudian
echo "Tidak ada $ Directory"
echo "Membuat ->" $ Direktori "
mkdir "$ Directory"
lain
echo "Direktori" $ Direktori "sudah ada
fi
jika [! -d "$ File"]; kemudian
echo "File $ tidak ada"
echo "Membuat ->" $ File "
sentuh "$ File"
lain
echo "File" $ File "sudah ada
fi
ketika Anda melakukan mkdir periksa nanti apakah terminal dapat membuatnya karena dapat merusak bola jika itu adalah folder sebagai root atau sistem hhah
Salam KZKG ^ Gaara query seperti yang akan saya lakukan untuk menggunakan curl. Saya ingin tahu bagaimana saya melakukannya dari konsol untuk melakukan ping ke url untuk melihat apakah itu tersedia misalnya http://portal.com/directorio/archivo1.php Di mana file1 akan menyimpan IP kunjungan, untuk memantau tim saya perlu membuat pin itu setiap setengah jam sehingga saya mengetahui IP publik karena berubah dari waktu ke waktu dan saya tidak dapat terhubung dengan ssh .
Salam terima kasih sebelumnya Tuhan memberkati Anda.
Halo,
Pertama, Anda harus mengatakan bahwa variabel IP (misalnya) adalah konten file itu, untuk ini Anda harus:
1. Unduh file
2. Lihat isinya dan dapatkan IP dari sana
3. IP tersebut adalah variabel
Sebagai contoh:
Di sini kami mengunduh file - »wget http://portal.com/directorio/archivo1.php -o file.html
Kemudian kami menetapkan variabel isinya: - »: $ {IP: =` cat file.html`}
.. dengan asumsi bahwa konten file itu hanya memiliki IP, jika tidak, Anda harus bekerja dengan grep, awk atau head.
Setelah Anda memiliki IP sebagai variabel, sisanya adalah hal yang paling sederhana di dunia 🙂
Jika Anda mau, kirimkan surat kepada saya melalui email (kzkggaara[at]desdelinux[dot]net) Saya dengan senang hati akan membantu Anda
Terima kasih banyak kzkggaara sangat berterima kasih.
Hai, Saya tidak mengerti banyak tentang komputasi dan saya tidak tahu apakah posting ini terkait dengan masalah yang saya miliki.
Saya berkomentar jika Anda membaca saya, meskipun kiriman tersebut dari setahun yang lalu:
Ternyata saya membuat folder di desktop saya untuk menyimpan beberapa video. Ya, saya menghapus video itu karena saya tidak lagi membutuhkannya dan sekarang folder ini memberi tahu saya bahwa itu tidak ada (meskipun itu terlihat di desktop saya).
- Itu masalah pertama yang saya miliki:
Saya tidak dapat menghapus folder.
- Masalah kedua dan menurut saya lebih penting:
Dalam upaya untuk menghapus folder tersebut, saya meletakkan folder FOTO. Sekarang ketika saya membuka folder yang "tidak ada" itu kosong dan FOTO-FOTO tidak ada.
Bagaimana cara memulihkan foto? Saya telah memberikan opsi di dalam folder "Tampilkan dokumen tersembunyi" tetapi folder FOTO tidak muncul.
Saya harap Anda tahu bagaimana ini diselesaikan.
Terima kasih.
Ada dua user yang utama: root dan your_user (misalnya natalia). Keduanya memiliki folder pribadi. your_user di / home dan root di / (direktori root). Dengan mengklik kanan pada folder, lihat siapa pemiliknya. Jika root dengan manajer file Anda menggunakan sudo atau gksu atau kdesu tergantung pada lingkungan yang Anda gunakan, buka direktori root -> root -> Desktop dan Anda mungkin akan menemukan foto-foto dan Anda dapat menghapus folder tersebut. Beberapa distro ketika Anda bukan pemilik file atau direktori dan Anda tidak memiliki izin akses memberi tahu Anda bahwa direktori / file tidak ada. Jika Anda adalah pemilik dan Anda bukan root, lakukan hal yang sama dengan pengelola file dengan sudo, dll dan buka direktori root -> / home -> personal_folder -> Desktop dan lihat apakah fotonya ada dan apakah Anda dapat menghapus foldernya.
Jika ini tidak berhasil, Anda harus melihat opsi lain dari terminal (konsol).
Hai apa kabar?
#! / bin / bash
membaca rute
#Enter ~ / Desktop
#Lalu saya mencoba menavigasi direktori itu
cd $ path
# Saya mendapatkan pesan bash berikut: cd: ~ / Desktop: File atau direktori tidak ada
Pertanyaan saya adalah, apa yang dapat saya lakukan agar saya memasukkannya dari keyboard dan menganggapnya sebagai jalur direktori?
Dan bagaimana saya bisa tahu jika ada grup,
bagus Saya punya masalah di canaima saya ketika saya menekan tombol cunaguaro dikatakan bahwa tidak ada file atau direktori seperti yang akan dilakukan untuk menyelesaikan masalah itu dan sisanya tidak membuka cunaguaro tolong terima kasih.
Bagaimana Anda melakukan jika dalam BASH jika nama file memiliki spasi?
Sebagai contoh:
Data.xlsx bulan April
Untuk menanyakan apakah file tersebut ada
Carlos, seperti ini:
if [["$ variable" == Data \ bulan \ of \ April.xlsx]]; lalu echo 'match'; fi
Anda juga dapat:
if [["$ variable" == 'Data untuk bulan April.xlsx']]; lalu echo 'match'; fi
Opsi lain:
[["$ Variable" == 'Data untuk bulan April.xlsx']] && echo 'cocok' || echo 'tidak cocok'
Di beberapa area gelap internet, mereka merekomendasikan menggunakan [[]] daripada [], dan jika Anda akan membandingkan angka maka: ((variabel> = 3)) && echo 'variabel lebih besar dari atau sama dengan 3' | | variabel echo 'kurang dari 3'
Oleh karena itu, untuk angka:
if ((angka! = 4)); lalu echo "$ {number} bukan 4"; else echo "$ {number} adalah 4"; fi
bagaimana Anda dapat membuat kode untuk memvalidasi jika direktori memiliki teks tertentu, untuk dapat mengeditnya.
contoh:
jika (teks1)
tidak melakukan apapun
lain
ubah teks1 menjadi teks2
sebuah pertanyaan, bagaimana cara memeriksa setiap 15 detik jika file tersebut ada atau tidak, terima kasih.
Halo,
ini:
if [-w / home / Komun / Logs / ti]; kemudian
Cari tahu apakah file tersebut dapat ditulis. Tetapi ini didasarkan pada izin pengguna. Apakah dapat dilakukan untuk mengetahui apakah grup atau yang lain memiliki izin?