Birkaç püf noktası var (sanırım bulunacak bir kopyası var), ama bunun için yapmaya meyilliyim.
cp /etc/prog/dir1/myconfig.yml{,.bak}
bu senin emrine genişler.
Bu, ayraç genişletme olarak bilinir . Burada kullanılan formda, {}
ifade virgüllerle ayrılmış birkaç dize belirtir. Bunlar, tüm /etc/prog/dir1/myconfig.yml{,.bak}
ifadeyi "genişletir", {}
parçayı sırayla her dizeyle değiştirir : boş dize, verme /etc/prog/dir1/myconfig.yml
ve sonra .bak
verme /etc/prog/dir1/myconfig.yml.bak
. Sonuç
cp /etc/prog/dir1/myconfig.yml /etc/prog/dir1/myconfig.yml.bak
Bu ifadeler iç içe geçebilir:
echo a{b,c,d{e,f,g}}
üretir
ab ac ade adf adg
Dizileri üretmek için sayıları kullanan bir değişken var:
echo {1..10}
üretir
1 2 3 4 5 6 7 8 9 10
ve ayrıca adımı belirleyebilirsiniz:
echo {0..10..5}
üretir
0 5 10
bash-fu
:)