Linki

2016-04-09 19 views
0

'da bir değişken yapmak için bir dizgiyi ayırarak linux ve komut satırını kullanıyorum ve bir dizin isminin bir kısmını alarak ve bir değişken olarak ayarlayarak bazı zorluklar yaşıyorum. "Led Zeppelin - Tepeler ve Uzak Away.mp3 üzerinde" almaya çalışıyorum ve "Tepeler ve Uzak Away.mp3 Üzeri" olarak tanımlanan bir değişken oluşturmaya çalışıyorum. enstrümanlar Sorunuzu çözmek gerekiyor, ama sed ile neler yapabileceğiniLinki

+0

bir şey denediniz mi? Bize göster. Yığın Taşması, biraz çaba göstermeyi tercih ediyor. –

+0

Senaryonun işe yaramasını sağladım, yardım için herkese çok teşekkür ederim. Bu önemsiz bir soru olsa özür diliyorum, hala her şeyi anlamaya çalışıyorum –

cevap

0

emin değil:

~$ echo "Led Zeppelin - Over the Hills and Far Away.mp3" | sed -e "s/^.*\- //" 
Over the Hills and Far Away.mp3 

Eğer varaible sonucu ayarlamak gerekiyorsa, bu nedenle değişken nedir? bash? Başka bir şey? Böyle deneyin:

#!/bin/bash 

line="Led Zeppelin - Over the Hills and Far Away.mp3" 

updated_line=$(echo "$line" | sed -e "s/^.*\- //")  
0

bu deneyin:

$ str="Led Zeppelin - Over the Hills and Far Away.mp3" 
$ var=`echo $str | sed -r 's/.*- (.*)/\1/'` 
$ echo $var 
Over the Hills and Far Away.mp3 
İlgili konular