החלפת פיקוד
החלפת פקודה מאפשרת לנו להשתמש בפלט של פקודה כהרחבה:
[me@linuxbox ~]$ echo $(ls)
מסמכים שולחניים ls-output.txt מוסיקה תמונות תבניות ציבוריות סרטונים
[me@linuxbox ~]$ echo $(ls)
מסמכים שולחניים ls-output.txt מוסיקה תמונות תבניות ציבוריות סרטונים
אחד האהובים עלי הולך בערך כך:
[me@linuxbox ~]$ ls -l $(איזה cp)
-rwxr-xr-x 1 root root 71516 2007-12-05 08:58 /bin/cp
[me@linuxbox ~]$ ls -l $(איזה cp)
-rwxr-xr-x 1 root root 71516 2007-12-05 08:58 /bin/cp
כאן העברנו את התוצאות של איזה cp כטיעון ל ls הפקודה, ובכך לקבל את הרישום של של cp תוכנית מבלי לדעת את שם הנתיב המלא שלה. אנחנו לא מוגבלים רק לפקודות פשוטות. ניתן להשתמש בצינורות שלמים (תפוקה חלקית בלבד
מוצג):
[me@linuxbox ~]$ קובץ $(ls -d /usr/bin/* | grep zip)
/usr/bin/bunzip2: קישור סמלי אל `bzip2'
/usr/bin/bzip2: קובץ הפעלה של ELF 32 סיביות LSB, Intel 80386, גרסה 1 (SYSV), מקושר דינמי (משתמש ב-Shared libs), עבור GNU/Linux 2.6.9, מופשט
/usr/bin/bzip2recover: קובץ הפעלה של ELF 32 סיביות LSB, Intel 80386, גרסה 1 (SYSV), מקושר דינמי (משתמש ב-Libs משותפות), עבור GNU/Linux 2.6.9, מופשט
/usr/bin/funzip: קובץ הפעלה של ELF 32 סיביות LSB, Intel 80386, גרסה 1 (SYSV), מקושר דינמית (משתמש ב-Shared libs), עבור GNU/Linux 2.6.9, מופשט
/usr/bin/gpg-zip: טקסט להפעלה של סקריפט מעטפת של Bourne
/usr/bin/gunzip: קישור סמלי אל `../../bin/gunzip'
/usr/bin/gzip: קישור סמלי אל `../../bin/gzip'
/usr/bin/mzip: קישור סמלי אל `mtools'
[me@linuxbox ~]$ קובץ $(ls -d /usr/bin/* | grep zip)
/usr/bin/bunzip2: קישור סמלי אל `bzip2'
/usr/bin/bzip2: קובץ הפעלה של ELF 32 סיביות LSB, Intel 80386, גרסה 1 (SYSV), מקושר דינמי (משתמש ב-Shared libs), עבור GNU/Linux 2.6.9, מופשט
/usr/bin/bzip2recover: קובץ הפעלה של ELF 32 סיביות LSB, Intel 80386, גרסה 1 (SYSV), מקושר דינמי (משתמש ב-Libs משותפות), עבור GNU/Linux 2.6.9, מופשט
/usr/bin/funzip: קובץ הפעלה של ELF 32 סיביות LSB, Intel 80386, גרסה 1 (SYSV), מקושר דינמית (משתמש ב-Shared libs), עבור GNU/Linux 2.6.9, מופשט
/usr/bin/gpg-zip: טקסט להפעלה של סקריפט מעטפת של Bourne
/usr/bin/gunzip: קישור סמלי אל `../../bin/gunzip'
/usr/bin/gzip: קישור סמלי אל `../../bin/gzip'
/usr/bin/mzip: קישור סמלי אל `mtools'
בדוגמה זו, תוצאות הצינור הפכו לרשימת הארגומנטים של פילה פקודה.
קיים תחביר חלופי להחלפת פקודות בתוכניות מעטפת ישנות יותר אשר נתמך גם ב לחבוט. זה משתמש ציטוטים אחוריים במקום סימן הדולר והסוגריים:
[me@linuxbox ~]$ ls -l `which cp`
-rwxr-xr-x 1 root root 71516 2007-12-05 08:58 /bin/cp
[me@linuxbox ~]$ ls -l `which cp`
-rwxr-xr-x 1 root root 71516 2007-12-05 08:58 /bin/cp