Pertanyaan yang diberi tag «shell»

Shell adalah antarmuka baris perintah Unix. Anda dapat mengetik perintah dalam shell secara interaktif, atau menulis skrip untuk mengotomatiskan tugas. Gunakan tag ini untuk pertanyaan yang berlaku pada / bin / sh dan sebagian besar shell yang kompatibel (abu, bash, ksh, zsh, ...). Untuk skrip shell dengan kesalahan, silakan periksa di http://shellcheck.net sebelum memposting di sini.


2
Mengapa menggunakan `yes` pada bash pipeline * tidak * menyebabkan loop tak terbatas?
Menurut dokumentasinya, bash menunggu hingga semua perintah dalam pipa selesai berjalan sebelum melanjutkan Shell menunggu semua perintah dalam pipa untuk berakhir sebelum mengembalikan nilai. Jadi mengapa perintah yes | trueselesai segera? Bukankah seharusnya yesloop selamanya dan menyebabkan pipa tidak pernah kembali? Dan sebuah subquestion: menurut spec POSIX , shell pipelines …
16 bash  shell  pipe 


3
Adakah alasan untuk menggunakan atau mengajarkan substitusi `...` untuk pengembangan baru?
Ini adalah pemahaman saya bahwa $(...)sintaks substitusi perintah yang lebih modern lebih disukai daripada `sintaks berbasis lama , karena lebih mudah dan lebih sedikit rawan kesalahan bersarang dan lolos sintaksis. Selanjutnya, tampaknya sebagian besar /bin/shkerang bergaya dalam dukungan penggunaan modern $(…): pesta ash (dan karena itu BusyBox, jadi kebanyakan embedded …

6
Shell: "Tampilkan semua 2588 kemungkinan?"
Jadi, saya memindahkan laptop saya (dan saya memiliki kebiasaan buruk mengatur hal-hal pada keyboard ...) dan saya bangun untuk menemukan ini: $ Tampilkan semua 2588 kemungkinan? (y atau n) Perintah apa yang akan menampilkan sesuatu seperti ini? Saya menggunakan Bash.
16 bash  shell 

1
Persen dalam variabel lingkungan $ PATH
$ PATH saya terlihat seperti ini: /home/torbjorr/deployed/vector/x86_64-GNU%2fLinux:/home/torbjorr/deployed/typewriter/x86_64-GNU%2fLinux:/home/torbjorr/deployed/mustudio/x86_64-GNU%2fLinux:/home/torbjorr/deployed/mathext/x86_64-GNU%2fLinux:/home/torbjorr/deployed/doxymax/x86_64-GNU%2fLinux:/home/torbjorr/deployed/c2tex/x86_64-GNU%2fLinux:/home/torbjorr/deployed/x86_64-GNU%2fLinux/wand:/home/torbjorr/deployed/x86_64-GNU%2fLinux/spellesc:/home/torbjorr/deployed/x86_64-GNU%2fLinux/projinit:/home/torbjorr/deployed/x86_64-GNU%2fLinux/herbs:/home/torbjorr/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games Dalam bash, saya bisa tanpa masalah memanggil tongkat yang terletak di /home/torbjorr/deployed/x86_64-GNU%2fLinux/wand Suka $ wand (i) Mål från "main.cpp" har registrerats (i) Skapar katalog "__wand_targets_dbg" (i) Kör g++ "main.cpp" -fpic -L"/home/torbjorr/deployed" -g -Wall -std=c++11 -I"/home/torbjorr/deployed" -o "__wand_targets_dbg/cb-template Namun, dalam mode kompatibilitas shell bourne, …
16 shell  path  dash  ash 

2
Penggunaan praktis opsi `set -k` di bash
Kapan kami menggunakan set -kopsi dalam bash? Manual referensi Bash mengatakan, Semua argumen dalam bentuk pernyataan penugasan ditempatkan di lingkungan untuk suatu perintah, bukan hanya yang mendahului nama perintah. Saya mengerti apa pilihannya, tetapi tidak bisa membayangkan kapan kami membutuhkannya.
16 bash  shell 

2
Tidak dapat memperluas tanda bintang tanpa izin yang sesuai
Bisakah seseorang menjelaskan kepada saya yang berikut ini? $ ls -ld /temp/sit/build/ dr-xr-s--- 3 asdf qwer 4096 Jan 31 2012 /temp/sit/build/ $ ls -ld /temp/sit/build/* ls: /temp/sit/build/*: Permission denied Jadi, saya tidak bisa menggunakan tanda bintang di sini. Saya sudah mencobanya dengan perintah sudo dan saya mendapatkan kesalahan "tidak ada …


2
Apa pengalihan dengan> | melakukan?
Kapan sebaiknya Anda gunakan >|untuk mengarahkan output ke file, bukan hanya >? Penjelasan yang diberikan ketika saya ditunjukkan ini adalah bahwa ia menjamin file target terpotong pertama. Tapi saya pikir >sudah tersirat itu. Apakah >|bermanfaat?


2
cara mengulang argumen di skrip bash
Saya ingin menulis skrip bash dengan jumlah argumen yang tidak diketahui. Bagaimana saya bisa berjalan melalui argumen ini dan melakukan sesuatu dengannya? Upaya yang salah akan terlihat seperti ini: #!/bin/bash for i in $args; do echo $i done
16 bash  shell  arguments 

3
Mengakhiri skrip bash shell yang berjalan di latar belakang
Saya sering menggunakan bashskrip shell untuk menjalankan perintah sederhana untuk banyak file berbeda. Misalnya, bahwa saya memiliki berikut bashshell script, yang disebut script.sh, yang menjalankan program / perintah foopada tiga file teks "a.txt", "b.txt", "c.txt": #!/bin/bash for strname in "a" "b" "c" do foo $strname".txt" done Juga, anggap itu foo …

2
Menjalankan perintah pipa secara paralel
Pertimbangkan skenario berikut. Saya memiliki dua program A dan B. Output Program A ke stdout string, sedangkan program B memproses baris dari stdin. Cara menggunakan kedua program ini tentu saja: foo @ bar: ~ $ A | B Sekarang saya perhatikan bahwa ini memakan hanya satu inti; karenanya saya bertanya-tanya: …


Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.