kzkn.net
当前位置:首页 >> shEll 按照空格分割 >>

shEll 按照空格分割

cat filename | awk -F" " '{print $2}' 双引号里面空2各就可以了。

假设每一个空格为一个分隔符,用awk实现: awk -F" " '{OFS="|";$1=$1;print $0}' 文件名 -F 设置输入域分隔符为空格。 OFS="|" 设置输出域分隔符。 print $0打印整行内容。

read -p "Input string (split with a space): " string #提示你输入字符串,你可以输入HERE YOU ARE str1=echo $string | cut -d' ' -f1 #将输入的字符串根据空格分割,取第一个字段(field) str2=echo $string | cut -d' ' -f2 #将输入的字符...

有很多命令都可以实现你要求的功能,比如 awk: echo "1:3:5" | awk -F ":" '{print $NF}' sed: echo "1:3:5" | sed 's/.*:\([^:]*\)$/\1/'

#!/bin/bashmyFile=/path/filenamecat $myFile | while read linedo echo "$line" #输出整行内容 echo "$line" | awk '{print $1}' #输出每行第一个字段done 以上是示例,根据你的需要自己修改吧。

#!/bin/bash read -p "please enter a string: " str echo $str | awk '{for(i=1;i

用cut最简便(参见 小米肥猫 的回答)。 另外,Bash中特有的字符串处理方法(掐头去尾法)也比较常用(参见下面的链接)。 对于这道题来说: var=“dfhjk_fewsk>dfakhi=vshbjy_df>brfdgr

空格和冒号(一个或多个)都可以用作字段分隔符。 比如文本格式为: Spring::123 456::AirAsiaGo:haha 分割出的字段就是 Spring 123 456 AirAsiaGo haha

空格前面不需要转义符(反斜杠),+ 前面需要。 改为: sed 's/ \+/ /g' test.txt > test1.txt

我的可以输出空格啊, [root@xiao ~]# test=`printf "%4d\n" 1` [root@xiao ~]# echo "$test" 1 你可以把test=”`printf "%4d\n" 1`“ 也加上双引号试试。

网站首页 | 网站地图
All rights reserved Powered by www.kzkn.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com