linux入门第一阶段——操作文件和目录的命令

  1. **

    linux用VI编辑后保存退出命令是什么啊?

    首先需要按ESC键回到命令模式;

    vi保存文件有不同的选项,对应于不同的命令,你可以从下面的命令中选择一个需要的输入: :wq 保存文件并退出vi :w
    保存文件但不退出vi

    :w file 将修改另外保存到file中,不退出vi :q 不保存文件,退出vi

    最后回车即可。

    创建目录以及文件**

1创建一个data目录

mkdir /data && ls -ld /data
mkdir的使用

2.在/data目录下建立一个oldboy.txt 文件

方法一: cd /data/ && vi oldboy.txt 该命令是编辑记事本 ,如果没有该文件会创建一个新的文件并且进行编辑。
方法二:cd /data/ 跳转到data目录,可以通过pwd命令来查询。
touch oldboy.txt
该命令会创建一个文件,如果该文件已经存在,只会更改文件的创建时间,不会更改内容。
方法三:cd /data/
echo > oldboy.txt
ll echo “l am oldboy linux” >> oldboy.tx *添加单行文本覆盖,会清空原来的内容。
方法三 : touch /data/oldboy.txt && ll /data/oldboy.txt

3.为oldboy.txt 增加内容为 I am studying linux.

第一种方法:nano或者vim都可以    vim/nano ldboy.txt    增加   Iam   studying linux.   
拓展:nano [Linux下的Nano命令容](http://www.cnblogs.com/haichuan3000/articles/2125943.html)
 cat test.txt,来查看刚刚写入的内容是否成功保存
第二种方法:echo覆盖|追加
echo "I am studying linux." >> oldboy.txt
第三种方法cat重定向
cat > oldboy.txt
I am studying linux.
第四种方法批量添加
cat >>oldboy.txt<<QQQ
I am studying linux
QQQ
  1. 把oldboy.txt文件拷贝到 /tmp目录下

第一种方法

:rsync
rsync -av /data/oldboy.txt /tmp/
拓展用法

第二种方法:
\cp -ap /data/oldboy.txt /tmp/

  • 5.把/daat 目录移动到/tmp目录下
  • mv -R /data/ tmp/
  • ls -ld /tmp

6,进入root目录下的data 目录,删除oldboy.txt
方法一: cd /root/data
rm -f odboy.txt.
方法二: find /root/data -type f -name “oldboy.txt” |rm -f
7.接着第6题,退回到上一级目录删除data目录
cd … /
rm -rf /data *rf是删除目录
8.已知文件test.txt内容为:
test
liyao
oldboy
请给打印出test.txt内容时,不包含oldboy的字符串:
创建测试文件:
cat >>test.txt>>QQ
test
liyao
oldboy
QQ
cat text.txt
第一种方法grep
grep -v “oldboy” test.txt
在这里插入图片描述
9,创建递归,目录
mkdir -pv /oldboy/test

10,剪切、复制文件不提示
方法一、取消命令本身的别名\cp /mnt/test.txt /tmp
方法二、使用命令的绝对路径开解决: /bin/cp /mnt/text.txt /tmp
11.只查看ett.txt文件第20到30行内容
seq:打印一个序列的数字
命令实例:
seq 2 会如下显示:
1
2
上方是竖排显示,横排显示需要加-s 中间可以用引号中的空格分割:
seq -s " " 5
显示:1 2 3 4 5
seq 1 2 9 —会显示13579 中间的2是公差,如果想要倒序显示可以用通道如:seq 1 2 9|tac
在记事本vi的编辑中 set nu 是显示行号的命

答:
第一种方法 head -30 ett.txt|tail -11 ------显示的效率不高
第二种方法 sed -n 20,30p ett.txt
小结:sed 擅长输出行
awk 擅长列
例1:awk ‘{if(NR>19&&NR<31) print $0}’ ett.txt ---------NP是行号的意思,$0是打印整行的意思,$1的意思是打印第一列
例2:awk -F “:” ‘{print $1}’ /etc/password
打印在passwd文档中第一列的文件 其中-F是分割的意思 ,
“:”是用它做分割
十二题:分析图片服务日志,把日志(每个图片访问次数*图片大小的综合)排行,取Top 10,也就是计算每个url 的访问大小。(本题适用于生产环境应用,这个功能可以用于IDC网站流量带宽很高,然后通过分析服务器日志那些元素占用流量过大,进而进行优化或裁减该图片,压缩JS等措施)
检测流量大小的问题
答:在这里插入图片描述
十三题:把/odboy目录下及子目录下所有以扩展名.sh结尾的文件包含./hostlists.txt的字符串全部替换为…/idctest_iplist.
答: 首先我们追加内容到文件
echo odboylinux >ett.txt
再拷贝文件到其它的目录下面
cp ett.txt /etc/
cp ett.txt /opt/
替换文件内容
sed s#odboylinux#odboywindows#g ett.txt
现在只更改输出,并没有更改源文件 s 的意思是更改编辑,g的意思是完全更改。
sed -i s#odboylinux#odboywindows#g ett.txt -i 是改变内容 -n 是取消默认输出
更改所有的文件需要借助find命令
fing / -type f -name f -name “ettc.txt”|xargs sed -i s#odboylinux#odboywindows#g
单独查看
cat /opt/ettc.txtx
查看所有的加粗样式
fing / -type f -name f -name “ettc.txt”|xargs cat

                                                         以上为草稿版

猜你喜欢

转载自blog.csdn.net/qq_25807055/article/details/82694387
今日推荐