Saya perlu membuat skrip shell yang memeriksa keberadaan file dan jika tidak ada, buat dan pindah ke perintah berikutnya, atau hanya pindah ke perintah berikutnya. Apa yang saya miliki tidak melakukan itu.
#!/bin/bash
# Check for the file that gets created when the script successfully finishes.
if [! -f /Scripts/file.txt]
then
: # Do nothing. Go to the next step?
else
mkdir /Scripts # file.txt will come at the end of the script
fi
# Next command (macOS preference setting)
defaults write ...
Kembali adalah
line 5: [!: command not found
mkdir: /Scripts: File exists
Tidak tahu apa yang harus dilakukan. Setiap tempat pencarian Google membawa saya menunjukkan sesuatu yang berbeda.
touch
file dan melewati persyaratan?
[
dan !
), tetapi mungkin membantu untuk menunjukkan di sini bahwa [
ini adalah perintah aktual di Unix. Perintah Unix membutuhkan spasi kosong antara nama perintah dan argumennya. Ya, itu juga Bash bawaan , tetapi ada juga biner di /usr/bin/[
sebagian besar sistem.