Linux第一天
1.创建一个目录/data
mkdir /data或者cd /;mkdir data
2.在data目录下创建一个test.txt
touch /data/test.txt或者cd /data/;touch test.txt
touch:可以一次创建多个文件
touch 1.txt 2.txt 3.txt
touch {1..100}.txt
3.将I am studying linux.写入test.txt
方法1.echo ”I am studying linux.”>test.txt
(>为替换原内容,>>为追加内容)
方法2.vi test.txt
然后写入I am studying linux.
按Esc最后:wq写入并退出
方法3.cat>test.txt<<EOF
然后写入I am studying linux.
末尾追加EOF回车保存
(注意cat>为替换>>为追加,EOF可随意指定)
4.把test.txt拷贝到tmp/下
方法1:cp /data/test.txt /tmp/
(当你需要拷贝一个目录到另一个目录下,使用cp -ap /data /tmp/)
5.把/data目录移动到/root下
mv /data /root/
6.把/root/data/下的test.txt删除
cd /root/data/;rm test.txt
(不建议使用rm -fr 目录,易产生问题,建议将删除文件mv /tmp/下,然后定期删除 )
7.退出到上级目录,删除data
cd ..;rm -r data
8.已知test.txt内容,显示除了“123”的内容
方法1.cat test.txt|grep -v “123” 或者grep -b “123” test.txt
(这里查看文件前n行的内容
head -n 3 test.txt
tail -n 12 test.txt
)
方法2.sed -e ‘/123/d’ test.txt
添加第二行(2前添加)
sed ‘2i greedisgood’ test.txt
添加第三行(2后添加)
sed ‘2a whosyourdaddy’ test.txt
删除第二~末行
sed ‘2,$d’ test.txt
删除第二行
sed ‘2d’ test.txt
增加三四行
sed ‘2a whosyourdaddy \
Greedisgood ?’ test.txt
替换第二~五行为一行
sed ‘2,5c 12345’ test.txt
列举第五~七行
sed -n ’5,7p’ test.txt
删除包含关键词的行,输出其他行
sed ‘/root/d’ test.txt
替换数据
sed ‘s/root/sony/g’ test.txt
9.一句话生成/test/test/test
mkdir -p /test/test/test
10./tmp/test.txt已经存在,将/mnt/test.txt拷贝到/tmp/下覆盖,让系统不提示是否覆盖
\cp /mnt/test.txt /tmp/test.txt
11.查看test.txt第20-30行
方法2:sed -n‘20,30p’ test.txt
方法3:awk ‘{if(NR<31 && NR>19) printf $1”\n”}’ test.txt
输出文本每行1,4字符串(以空格分隔)
awk ‘{print $1,$4}’ test.txt
输出文本每行1,4字符串(按指定字符分隔)
awk -F, ‘{print $1,$4}’ test.txt
Awk ‘BEGIN{FS=”,”} {print $1.$4}’ test.txt
格式化输出(1,4字符串分别显示8和10个)
awk ‘{printf “%-8s %-10s\n”,$1,$4}’ test.txt