«quoting» etiketlenmiş sorular

Dizeler genellikle tırnak içeren dizelerle uğraşma sorununu gündeme getiren tırnaklarla sınırlandırılır.




3
Sh komut dosyasında sed kullanırken kaçmak için hangi karakterlere ihtiyacım var?
Aşağıdaki betiği alın: #!/bin/sh sed 's/(127\.0\.1\.1)\s/\1/' [some file] Bunu sh( dashburada) çalıştırmayı denersem, kaçması gereken parantezler nedeniyle başarısız olur. Ama yok (sekizli arasındaki veya tersbölülerle kendilerini kaçmak gerekir \sya \1). Buradaki kural nedir? Ne zaman ihtiyacım olacak {...}veya [...]? Yaptıklarımın ve kaçmaya gerek olmadıklarımın bir listesi var mı?

3
Bash / POSIX mermilerinde bir değişken vermeyi unutmanın güvenlik etkileri
Eğer unix.stackexchange.com’u bir süredir takip ediyorsanız echo $var, Bourne / POSIX mermilerinde liste içeriğinde (içinde olduğu gibi ) değişken olmayan bir değişkeni bırakmanın çok özel bir anlamı olduğunu ve umarım ki çok iyi bir nedeniniz olmadığı sürece yapılmamalı. Q & burada A (Örnekler bir dizi uzun uzadıya tartışıldı oluyor: ? …

3
Neden 'ls' aniden boşluklu öğeleri tek tırnak içinde kaydırıyor?
Makinelerimden birinde (Debian Sid çalıştıran) lsboşluk içeren herhangi bir dosya adı yazdığımda onu çevreleyen tek tırnak işaretleri olduğunu fark ettim. Hemen takma adlarımı kontrol ettim, sadece onları eksiksiz bulmak için. wyatt@debian630:~/testdir$ ls 'test 1.txt' test1.txt wyatt@debian630:~/testdir$ alias alias ls='ls --color=auto' alias wget='wget --content-disposition' wyatt@debian630:~/testdir$ (resim) Adlarında tek tırnak içeren dosyalar …

6
Komutlarda `(backquote / backtick) ne anlama geliyor?
Aşağıdaki komutla karşılaştım: sudo chown `id -u` /somedir ve merak ediyorum: `sembolün anlamı nedir . Mesela yukarıdaki komutun iyi çalışmasına rağmen, aşağıdaki komutun çalışmadığını gördüm: sudo chown 'id -u' /somedir
159 shell  quoting 


3
Bash içinde $ (komut yerine koyma) içinde alıntı yapmak
Bash ortamımda boşluk içeren değişkenler kullanıyorum ve bu değişkenleri komut değiştirme içinde kullanıyorum. Maalesef SE'de cevabı bulamıyorum. Değişkenlerimi teklif etmenin doğru yolu nedir? Bunlar iç içe geçmişse nasıl yapmalıyım? DIRNAME=$(dirname "$FILE") ya da ikamenin dışında teklif verebilir miyim? DIRNAME="$(dirname $FILE)" ya da her ikisi de? DIRNAME="$(dirname "$FILE")" veya geri keneler …

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
Bash içinde ünlem işareti (!) Kullanılamaz mı?
Curl komutunu !, yolunda bir ünlem işareti ( ) bulunan bir http URL'sine erişmek için kullanmaya çalışıyorum . Örneğin: curl -v "http://example.org/!287s87asdjh2/somepath/someresource" Konsol ile cevap verir bash: ... event not found. Burada neler oluyor? ve ünlem işaretinden kaçmak için uygun sözdizimi ne olurdu?

4
Tırnaksız boşluklarla parametre genişletme neden “[[” çift parantez içinde çalışıyor ancak “[” tek parantez içinde değil?
Tek veya çift parantez kullanmakla karıştırıldım. Şu koda bak: dir="/home/mazimi/VirtualBox VMs" if [[ -d ${dir} ]]; then echo "yep" fi Dize bir boşluk içeriyor olmasına rağmen mükemmel çalışıyor. Ama onu tek bir dirseğe değiştirdiğimde: dir="/home/mazimi/VirtualBox VMs" if [ -d ${dir} ]; then echo "yep" fi Diyor ki: ./script.sh: line 5: …
85 bash  quoting  ksh  test 

7
Karmaşık dizgiyi bulmak ve değiştirmek için sed'i kullanma (tercihen regex ile)
Aşağıdaki içeriğe sahip bir dosyam var: <username><![CDATA[name]]></username> <password><![CDATA[password]]></password> <dbname><![CDATA[name]]></dbname> ve ilk satırdaki "isim" i "şey" e, ikinci satırdaki "parola" "şey" ye, ve üçüncü satırdaki "isim" ye "farklı" a değiştirecek bir komut dosyası yapmam gerekiyor. Bu dosyada meydana gelenlerin sırasına güvenemiyorum, bu yüzden "isim" in ilk oluşumunu "bir şey" ile ve …

3
Komut dosyasında bir $ “dollarsign-prefixed string” olması ne anlama geliyor?
Bunu bir init betiğinde gördüm. echo $"Stopping Apache" Bu dolar işareti ne için? Şimdiye kadarki araştırmam: Bunu bash kılavuzunda buldum: extquote Set, varsa $'string've $"string"alıntı dahilinde gerçekleştirilir ${parameter}çift tırnak içine açılımları. Bu seçenek varsayılan olarak etkindir. ... ama $önek olan ve olmayan dizeler arasında bir fark bulamıyorum : $ echo …

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.