我写了一个代码,它的伟大工程,但我需要使用变量,而不是静态的数字范围为8和16在命令行中使用变量
cat /etc/passwd | sed '/^#/d' | sed -n 'n;p' | sed 's/:\(.*\) //g' | sed 's/ /,/g' | sed 's/\(.*\),/\1./' | sort -r | sed 's/*rav://g' | sed "s/:.*//" | rev | sed -n -e '8,16p' | xargs | sed -e 's/ /, /g' | sed '/:[0-9]*$/ ! s/$/./'
我已经改变了代码
cat /etc/passwd | sed '/^#/d' | sed -n 'n;p' | sed 's/:\(.*\) //g' | sed 's/ /,/g' | sed 's/\(.*\),/\1./' | sort -r | sed 's/*rav://g' | sed "s/:.*//" | rev | sed -n -e '$FT_LINE1,$FT_LINE2+p' | xargs | sed -e 's/ /, /g' | sed '/:[0-9]*$/ ! s/$/./'
但其中变量名称结尾我得到了一个错误
sed: 1: "$FT_LINE1,$FT_LINE2p": invalid command code F
谨防“无用的使用猫”,并通过使第一次保存过程命令:'sed'/ ^#/ d' etc/passwd' –