1. 1行目の最後の文字を削除し、2行目の最後から2番目の文字を削除し、2行目のn番目の文字を削除します。これを実現する方法はありますか?
ABCDEFG
ABCDEFG
ABCDEFG
ABCDEFG
ABCDEFG
awkの問題解決:
awk 'BEGIN{FS=OFS=""}{if(NF>=NR)$(NF-NR+1)="";print}' txt
分析:
次に、最後の括弧内のコンテンツを定期的に取得する方法。(こんにちは)私は中国人です(はい)
#1
(?<=()[\u4e00-\u9fa5]{
2}(?!.*[\u4e00-\u9fa5]{
2})(?=))
#2
echo '(您好)我是中国人(是的)啊啊啊啊' | grep -Po '.*(\K[^)]+'
#3
sed -r 's#.*((.*?))$.*#\1#' zhongwen.txt
3.シェルを介して、初日に00、01、02、03、04を印刷し、10日目に05、06、07、08、09、...を印刷し、45、46、47、48を印刷します。 、49、そして11日目は再び00から始まります。。このようにループし続けます。
test.shコンテンツ:
# seq -w 0 49 | xargs -n 5 > 1.txt
#!/bin/bash
#1.txt 内容为 seq -w 0 49 | xargs -n 5
currPath=/root/shellDir/program/testFile/1.txt
lineNum=`seq -w 0 49 | xargs -n 5 | wc -l`
IFS=$'\n'
#set -x
indexNum=0
for i in `cat $currPath`
do
#echo $i
arrayA[$indexNum]=$i
let indexNum+=1
done
#echo ${arrayA[*]}
count=1
while [ 1 ]
do
echo ${
arrayA[$((count-1))]}
let count+=1
sleep 1s
if [ $count -gt 10 ];then
count=1
echo -e "\n\n num reset...."
fi
done
実行結果
兄弟とのその他の考え方:
1。
2、
用定时任务加一个临时文件,文件里写满00到49,定时任务每次从里面读5行,顺便把读读到的5行去掉并追加到文件尾部
4、メモの指示
jotソースパッケージ:
https ://launchpad.net/ubuntu/+archive/primary/+sourcefiles/athena-jot/9.0-7/athena-jot_9.0.orig.tar.gz
Jotはseqに似ていますが、場所によっては便利
です。上の図は次のように書くことができます
。seqよりも多くのものを展開し、文字を順番にリストし、
等差数列
を-1から1に均等に11の部分に分割します。
5。「-」の前の数字に従って小さいものから大きいものへのソート方法
1-aa
2-sa
3-aad
41-aac
55-qa
61-aa
7-qa
8-aa
9-aa
12-bb
15-vv
``
解法1 sort:
```shell
sort -t"-" -k1 -n 2.txt
解決策2awk: