![]() |
|
|
google unix.com
|
|||||||
| Forum | Registrera | Forum Regler | Länkar | Album | FAQ | Medlemslista | Kalender | Söka | Dagens inlägg | Markera forum som lästa |
| Shell-programmering och Skript Post frågor om ksh, CSH, SH, bash, PERL, PHP, sed, awk och andra skalskript och skal skriptspråk här. |
Mer UNIX och Linux Forum Ämnen Du kan hitta Helpful
|
||||
| Tråd | Thread Starter | Forum | Svar | Senaste Inlägg |
| Omdirigera till en variabel? Eller är det cmd huven? | oxoxo | UNIX for Dummies Frågor & Svar | 2 | 11-22-2008 08:59 |
| omdirigera katt till rörlig | shailesh_arya | Shell-programmering och Skript | 7 | 07-10-2008 05:34 |
| Omdirigera till rörlig | Mrad | UNIX for Dummies Frågor & Svar | 2 | 05-07-2007 05:18 |
| Redirect från rörlig till kommandoraden? | ugh | UNIX for Dummies Frågor & Svar | 8 | 03-28-2006 11:31 |
| omdirigera kommando produktion till rörlig | hugow | UNIX for Dummies Frågor & Svar | 1 | 06-22-2005 07:43 |
![]() |
|
|
LinkBack | Thread Tools | Sök i denna tråd | Rate Thread | Visningslägen |
|
|
|
#1 (permalänk)
|
||||
|
||||
|
variabel omdirigera Messing upp ett sed-kommando.
Inte säker på om denna titel är anständigt, men here we go. Jag kör dessa rader med kommandon:
Kod:
qstat -f $1 | sed 's/^[ \t]*//' | sed -n -e ":a" -e "$ s/\n//gp;N;b a" | sed 's/\\,/,/' | awk -F"PBS_O_WORKDIR=" '{print $2}' | awk -F",PBS_O_SYSTEM" '{print $1}'
När jag kör det, det fungerar bra, alla steg fungerar perfekt. Men när jag direkt resultatet i en variabel, den sed kommando för att ta bort backslash misslyckas. Så förenklade jag problemet: echo "Hello \, World" | sed 's / \ \ ,/,/' -> "Hello, World" var \u003d `echo" Hello \, World "| sed 's / \ \ ,/,/'`; echo $ var -> "Hej \, World" några tankar? |
|
#2 (permalänk)
|
||||
|
||||
|
"Cascading backslash" alias "Leaning tandpetare"!
![]() Kod:
var=`echo "Hello\,World" | sed 's/\\\,/,/'`; echo $var --> "Hello,World" Det är för att baklängescitationstecken är leken en annan subshell, men den ursprungliga backslash har redan tolkats av den första. |
|
#3 (permalänk)
|
|||||
|
|||||
|
denna enkla tr kommer att göra det
Kod:
echo "Hello\,World"|tr -d '\\' |
|
#4 (permalänk)
|
||||
|
||||
|
Eller
Kod:
var=$(echo "Hello\,world" | sed 's/\\,/,/g'); echo $var -Devaraj Takhellambam |
![]() |
| Komihåglista |
| Taggar |
| backquotes, omvända snedstreck, omdirigera, sed |
| Thread Tools | Sök i denna tråd |
| Visningslägen | Betygsätt denna tråd |
|
|