«shell» etiketlenmiş sorular

Kabuk Unix'in komut satırı arabirimidir. Kabuktaki komutları etkileşimli olarak yazabilir veya görevleri otomatikleştirmek için komut dosyaları yazabilirsiniz. / Bin / sh ve en uyumlu kabuklara (kül, bash, ksh, zsh,…) uygulanan sorular için bu etiketi kullanın. Hatalı kabuk komut dosyaları için lütfen buraya göndermeden önce http://shellcheck.net adresinden kontrol edin.


1
Çift alıntı ne zaman gereklidir?
Eski tavsiyeler $VARIABLE, en azından birinin kabuğun tek bir öğe olarak yorumlanmasını isterse, içerdiği herhangi bir ifadeyi ikiye katlamaktı , aksi halde içeriğindeki boşluklar $VARIABLEkabuğu fırlatırdı. Bununla birlikte, kabukların daha yeni versiyonlarında artık çift alıntı yapılmasının gerekmediğini (en azından yukarıda tarif edilen amaç için) gerekli olduğunu biliyorum. Örneğin, içinde bash: …

7
Enter tuşuna basmadan komut nasıl çalıştırılır?
Kazayla ben eşlenen Enteraracılığıyla xkbsetetmek Pointer_button2. Şimdi her çarptığımda Enteranlamsız metinler çıkıyor. Geri almayı içeren bir geçici çözüm düşündüm, ancak bu bir komut xmodmap -e "keycode 135 = Pointer_Button2"(veya bunun dışında herhangi bir başka bir anahtar kod çalıştırmak zorunda kalacağım anlamına gelir Enter). Ancak, bu komutu çarpmadan, terminalde çalıştıramıyorum Enter. …

30
Bash kabuğunda hızlı rehber gezinme
Sık sık, örneğin tamamen alakasız yolları vardır dizinleri arasında geçiş yapmak istiyorum /Project/Warnest/docs/ve ~/Dropbox/Projects/ds/test/. Ama ben her zaman yazmak istemiyorum cd /[full-path]/. Daha önce çalışılmış dizinlere geçmek için kısayol komutları var mı? Düşünebileceğim bir çözüm bash .profile, sık kullanılan dizinler cdiçin ortamıma değişkenleri ve bu değişkenleri kullanarak onlara eklemektir . …



7
Dizi karşılaştırması için eşit olmayan işleci kullanma
PHONE_TYPEDeğişkenin üç geçerli değerden birini içerip içermediğini kontrol etmeye çalıştım . if [ "$PHONE_TYPE" != "NORTEL" ] || [ "$PHONE_TYPE" != "NEC" ] || [ "$PHONE_TYPE" != "CISCO" ] then echo "Phone type must be nortel,cisco or nec" exit fi Yukarıdaki kod benim için işe yaramadı, bu yüzden bunun yerine …

3
“Eko” neden “dokunuştan” daha hızlı?
Zaman damgasını, dizimdeki tüm xml dosyalarının geçerli zamanına (tekrarlı olarak) güncellemeye çalışıyorum. Mac OSX 10.8.5 kullanıyorum. Yaklaşık 300.000 dosyada, aşağıdaki echokomut 10 saniye sürer : for file in `find . -name "*.xml"`; do echo >> $file; done Ancak, aşağıdaki touchkomut 10 dakika sürer ! : for file in `find . …
116 shell  command  echo 


3
Yerel komut dosyasını uzaktaki makinede nasıl çalıştırabilirim ve bağımsız değişkenleri nasıl ekleyebilirim?
Yerel olarak çalıştırıldığında iyi çalışan bir komut dosyası yazdım: ./sysMole -time Aug 18 18 "-Time" , "Aug" , "18" ve "18" argümanları başarıyla komut dosyasına iletilir. Şimdi, bu komut dosyası uzak bir makinede ancak yerel makinedeki yerel bir dizinden yürütülecek şekilde tasarlandı. Örnek: ssh root@remoteServer "bash -s" < /var/www/html/ops1/sysMole Bu …

14
Ok tuşlarını kullanmadan son komutu nasıl tekrarlarım?
UpÖnceki komutları tekrarlamak için kullanabileceğimi biliyorum . Son komutu çalıştırmak sadece Up+ işaretini içerir Enter. Ancak, çok fazla zaman harcadığım için Happy Hacking Keyboard'u satın almayı düşünüyordum vim. Bu klavyenin ok tuşları yoktur ve bu tür bir davranışı nasıl elde edeceğimi bilmenin tek yolu Ctrl+ ' Rya basmak ve önceki …

3
Bash betiğine komut satırı argümanlarını ilet
Ben bash script programlamada yeniyim. Girdi olarak bir dize argümanı (isim) kabul eden bir bash betiği 'deploymLog' uygulamak istiyorum. [root@localhost Desktop]# ./deploymLog.sh name burada string argümanını (name) komut satırından geçirmek istiyorum İlk adım olarak, bu dizgeyle birlikte geçerli zaman damgasını Logone.txtaşağıdaki dizinde mevcut dizinde yazan bir günlük dosyasına eklemeliyim: [name]=[System …
114 bash  shell  scripting 

11
Bir cron komutunu mevcut çevresel değişkenlerle nasıl çalıştırabilirim?
Bir cron komutunu mevcut çevresel değişkenlerle nasıl çalıştırabilirim? Bir kabuk isteminde iseniz echo $ORACLE_HOMEve bir yol alabilirim. Bu benim içime giren çevresel değişkenlerimden biri ~/.profile. Bununla birlikte, ~/.profilefron cron komut dosyalarının yüklenmediği ve $ORACLE_HOMEdeğişken ayarlanmadığı için komut dosyalarımın başarısız olduğu görünüyor . Gelen bu soruya yazar oluşturarak bahseder ~/.cronfilecron için …


7
Stdout'u, üzerinde yazma izniniz olmayan bir dosyaya yönlendirmek
Üzerinde dosya yazma izni olmayan bir dosyayı değiştirmeye çalıştığınızda hata alırsınız: > touch /tmp/foo && sudo chown root /tmp/foo > echo test > /tmp/foo zsh: permission denied: /tmp/foo Sudoing komutu komutu root olarak çalıştığı için yapmaz, ancak kabuk stdout'u yönlendirir ve yine de dosyayı açar: > sudo echo test > …

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.