7
A
回答
12
隨着sed
:
var=$(echo -e "AAA\nBBB" | sed -n '2p')
隨着awk
:
var=$(echo -e "AAA\nBBB" | awk 'NR==2')
然後簡單,回聲你的變量:
echo "$var"
0
像這樣:
var=$(echo -e 'AAA\nBBB' | sed -n 2p)
echo $var
BBB
1
您可以通過管道頭/尾的輸出做到這一點 - var=$(cmd | tail -n +2 | head -n 1)
4
呼叫read
兩次:
echo -e "AAA\nBBB" | { read line1 ; read line2 ; echo "$line2" ; }
請注意,您所需要的{}
所以確保兩個命令都獲得相同的輸入流。此外,該變量不是{}
外部訪問,因此這並沒有工作:
echo -e "AAA\nBBB" | { read line1 ; read line2 ; } ; echo "$line2"
2
您可以使用sed
:
SecondLine=$(Your_command |sed -n 2p)
例如:
echo -e "AAA\nBBBB" | sed -n 2p
你根據要打印的行更改編號。
0
在bash腳本: 變量= echo "AAA\nBBB" | awk "NR==2"
1
使用的陣列與參數擴展,以避免子shell:
str="AAA\nBBB"
arr=(${str//\\n/ })
var="${arr[1]}"
echo -e "$str"
+0
+1用於提示強大的內置功能。 '/'和'}'之間的空間是否真的有必要? –
+1
是的,沒有空間的子字符串沒有有效的替代來定義單獨的數組元素。 – koola
相關問題
- 1. Bash - 如何將命令的輸出寫入變量並獲取命令pid
- 2. 如何將Bash命令的輸出分配給變量?
- 3. 如何將bash命令的輸出放到Python變量中?
- 4. 如何將bash命令的輸出存儲在變量中?
- 5. bash讀取循環只讀取輸入變量的第一行
- 6. Bash Script_將從讀命令讀取的變量插入到命令中
- 7. 如何把命令的輸出在bash變量
- 8. 如何獲得bash命令的輸出變量
- 9. 如何將用戶輸入讀入Bash中的變量?
- 10. 僅寫入第二個命令行參數的輸出
- 11. 來自命令輸出和變量的行數不同,wc,bash
- 12. 如何運行命令,使用bash獲取輸出和輸入命令
- 13. 如何將命令輸出的部分(在某個字符之後)讀入bash變量?
- 14. 在cshell中:如何將變量設置爲命令行輸出?
- 15. 如何將我的bash命令的變量值輸入到MySQL中?
- 16. 如何閱讀命令行輸出
- 17. 顯示Bash命令的輸出並將輸出保留在變量中
- 18. 將命令輸出轉換爲bash中的變量和修剪變量?
- 19. 需要第二行輸出wmic得到最後修改命令輸入變量而不寫入文件
- 20. 如何存儲bash命令的輸出?
- 21. 閱讀命令行輸出
- 22. 將命令輸出保存到變量
- 23. 將命令輸出分配給變量
- 24. 將命令輸出到變量
- 25. Bash - 如何把命令中的變量?
- 26. 如何輸入第二行
- 27. Bash的「讀取」變量的僞輸入
- 28. 如何將包含要輸出的變量的命令重定向到Windows命令行上的變量
- 29. 如何通過ssh在bash中將命令輸出保存到變量中
- 30. 輸入命令後在命令行中讀取awk中的變量
爲了獲得可變的塊之外存在,則使用不涉及的配管的方法:[進程替換](HTTP:// WWW .gnu.org/software/bash/manual/bashref.html#Process-Substitution)'{read line1;讀第2行; } <<(command)'或者[here-string](http://www.gnu.org/software/bash/manual/bashref.html#Here-Strings)'output = $(command); {讀取line1;讀第2行; } <<<「$ output」' –
@glennjackman請在你的評論中發表你給出的答案,因爲它是迄今爲止給出的最好的答案(所有其他答案都使用'sed'或'awk'或'tail' /''頭'組合)。 –
@glenn jackman上面的輸入非常有價值! – RAM237