简单的linux系统学习笔记——03

一、文件相关操作命令

1.创建文件

创建一个空文件

【【【   touch + 创建的文件名(文件路径)  】】】

[root@haha t1]# touch 1.txt   //相对路径
[root@haha t1]# ll
总用量 0
-rw-r--r--. 1 root root 0 7月  19 08:57 1.txt


[root@haha t1]# touch /t1/2.txt //绝对路径
[root@haha t1]# ll
总用量 0
-rw-r--r--. 1 root root 0 7月  19 08:57 1.txt
-rw-r--r--. 1 root root 0 7月  19 08:58 2.txt

2.删除文件

[root@haha t1]# rm -rf 1.txt /t1/2.txt
[root@haha t1]# ll
总用量 0

3.查看文件

查看文件是否存在
[root@haha t1]# ll
总用量 0
-rw-r--r--. 1 root root 0 7月  19 09:04 1.txt
[root@haha t1]# ll 3.txt
ls: 无法访问3.txt: 没有那个文件或目录
----------------------------------------------------------------------------------
查看文件内容 【cat】

【【【   cat + 文件路径   】】】
[root@haha t1]# cat 1.txt
wwww


【【【   cat + -n + 文件路径   】】】
[root@haha t1]# cat -n 1.txt  //查看行号 【-n】
1	wwww


【【【   cat + -E + 文件路径   】】】
[root@haha t1]# cat -E 1.txt  //在文件每行末尾加$ (验证每行是否有空格) 【-E】
w $
p$
ww ww$
$
$
   $
$
 $
 $
 $
   $


【【【   cat + -b + 文件路径   】】】
[root@haha t1]# cat -b 1.txt  //查看文件时除了空行,其余显示行号【-b】
     1	w 
     2	p
     3	ww ww



     5
     4	111   


【【【   cat + -s + 文件路径   】】】
[root@haha t1]# cat -s 1.txt  //当文件有连续的空行时,会只显示一行空行(方便阅读)【-s】
w 
p
ww ww

   
111



【【【   cat + -A + 文件路径    】】】  //显示换行符
----------------------------------------------------------------------------------
查看文件最近记录【tail】

【【【   tail + -行数 + 文件路径   】】】
[root@haha t1]# tail -10 /var/log/secure    //查看文件最近10行
Jul 18 21:36:12 haha sshd[2051]: Accepted password for root from 10.0.0.1 port 8188 ssh2
Jul 18 21:36:12 haha sshd[2051]: pam_unix(sshd:session): session opened for user root by (uid=0)
Jul 19 08:15:16 haha polkitd[921]: Loading rules from directory /etc/polkit-1/rules.d
Jul 19 08:15:16 haha polkitd[921]: Loading rules from directory /usr/share/polkit-1/rules.d
Jul 19 08:15:16 haha polkitd[921]: Finished loading, compiling and executing 2 rules
Jul 19 08:15:16 haha polkitd[921]: Acquired the name org.freedesktop.PolicyKit1 on the system bus
Jul 19 08:15:23 haha sshd[1343]: Server listening on 0.0.0.0 port 22.
Jul 19 08:15:23 haha sshd[1343]: Server listening on :: port 22.
Jul 19 08:18:24 haha sshd[1600]: Accepted password for root from 10.0.0.1 port 9978 ssh2
Jul 19 08:18:25 haha sshd[1600]: pam_unix(sshd:session): session opened for user root by (uid=0)
----------------------------------------------------------------------------------

tail监控文件变化 【-f】
【【【   tail + -f + 文件路径   】】】
[root@haha t1]# tail -f /var/log/secure
----------------------------------------------------------------------------------

查看历史最久文件 【head】(从上往下看)
【【【   head + -行数 + 文件路径   】】】
[root@haha t1]# head -10 /var/log/secure  //查看最老的10条记录
Jul 17 10:55:07 haha polkitd[943]: Loading rules from directory /etc/polkit-1/rules.d
Jul 17 10:55:07 haha polkitd[943]: Loading rules from directory /usr/share/polkit-1/rules.d
Jul 17 10:55:07 haha polkitd[943]: Finished loading, compiling and executing 2 rules
Jul 17 10:55:07 haha polkitd[943]: Acquired the name org.freedesktop.PolicyKit1 on the system bus
Jul 17 10:55:11 haha sshd[1414]: Server listening on 0.0.0.0 port 22.
Jul 17 10:55:11 haha sshd[1414]: Server listening on :: port 22.
Jul 17 10:55:16 haha login: pam_unix(login:session): session opened for user root by LOGIN(uid=0)
Jul 17 10:55:16 haha login: ROOT LOGIN ON tty1
Jul 17 11:06:11 haha sshd[1722]: Accepted password for root from 10.0.0.1 port 63638 ssh2
Jul 17 11:06:11 haha sshd[1722]: pam_unix(sshd:session): session opened for user root by (uid=0)
----------------------------------------------------------------------------------

查看大文件
more 文件名 //分页查看大文件
	f(下)/b(上) //上下翻页
less 文件名 //
	j(下)/k(上)  //滚轮上下翻页
	f/b //上下翻页
	也可以上下左右箭头进行滑动
	
less比more查看更加灵活

4.编辑文件

echo 方式编辑文件(没有文件会自动创建文件)

【【【   echo + 文本内容 + > + 文件路径   】】】   覆盖写入
[root@haha t1]# ll
总用量 0
[root@haha t1]# echo "娃哈哈" > 1.txt
[root@haha t1]# ll
总用量 4
-rw-r--r--. 1 root root 10 7月  19 10:20 1.txt
[root@haha t1]# cat 1.txt
娃哈哈
【【【   echo + 文本内容 + >> + 文件路径   】】】   追加写入
[root@haha t1]# echo "哈哈哇" >> 1.txt
[root@haha t1]# cat  1.txt
娃哈哈
哈哈哇

**标准输出重定向**
>     //覆盖写入
>>    //追加写入

清空文件
> 文件名  //给文件覆盖空

cat 方式编辑文件(没有文件会自动创建)

【【【   cat + > + 文件路径 + <<'EOF' >EOF    】】】    覆盖写入
[root@haha t1]# cat > 2.txt <<'EOF'
> 111
> 2
> 233
> 4556
> EOF
[root@haha t1]# cat 2.txt
111
2
233
4556

【【【   cat + >> + 文件路径 + <<'EOF' >EOF    】】】    追加写入
[root@haha t1]# cat >> 2.txt <<'EOF'
> 99999999
> EOF
[root@haha t1]# cat 2.txt
111
2
233
4556
99999999

二、vi/vim 编辑器

【【【  vim + 文件路径  】】】 //默认进入视图模式
模式一:视图模式
模式二:编辑模式
模式三:命令模式
------------------------ 视图模式 -----------------------------
i:进入编辑模式,在当前光标下插入
esc:返回视图模式
a:追加进入编辑模式,在当前光标后插入
A(shift+a):追加光标所在行尾进入编辑模式
o:在当前行的下一行插入空行,进入编辑模式
O(shift+o):在当前行的上一行插入空行,进入编辑模式
u:返回上一步操作
ctrl + r:返回下一步操作
C(shift+c):删除光标所在位置到行尾,进入编辑模式
cc :清空当前行(保留当前行),进入编辑模式
dd :删除当前行,不进入编辑模式
数字+dd :连续删除行  例:2dd //连续删除两行
d1G :删除光标所在位置到文件头
dG :删除光标所在位置到文件末尾
^ :光标到行首
$ :光标到行尾
d^ :删除光标所在位置到行首,不进入编辑模式
d$ :删除光标所在位置到行尾,不进入编辑模式
yy :复制当前行
数字+yy :复制光标下的几行  例:3yy  //复制光标下的3行
p :粘贴yy复制的行
数字+p :粘贴yy复制的行几次   例:3p  //粘贴yy复制的行3次
gg:光标前往文件首行
G(shift + g):光标前往文件尾行
数字+gg/数字+G :光标前往文件第几行  例:10gg/10G  //光标前往文件第10行
------------------------------------------------------------------
------------------------ 编辑模式 ---------------------------------

无需多说----【打字】

------------------------------------------------------------------
------------------------ 命令模式 ---------------------------------
/+搜索内容 : 查找相关内容  例:/root   //查找,高亮文件内的root字符串 (视图模式下输入)
			n:向下查找
			N:向上查找
/+搜索内容+\c : 查找相关内容不区分大小写  例: /a\c   //查找,高亮文件内的a和A字符串

:noh :取消高亮显示
:set nu :显示行号
:wq :保存并退出
:wq! :强制保存并退出
:q :退出不保存
:q :强制退出不保存

:set paste :保持原格式粘贴

s#原本内容#要替换的内容#g
:s###g或s///g或s@@@g :替换文件
:行号,行号s###g //指定行号(区间)替换文件内容
例:
	:10,12s#var#hhh#g  //替换10到12行var更改成hhh
:%s###g :将整个文件替换
例:
	:%S/var/hhh/g   //将整个文件中的var替换成hhh
	
拓展:
	不区分大小写替换文件内容
	1.txt原文件内容:
		echo
		Echo
		
	sed -ri 's#echo|Echo#aaa#g' 1.txt  (涉及正则表达式)
	
	1.txt文件替换后内容:
		aaa
		aaa
		
		
vim快速到指定行数		
【【【vim + +行数 + 文件路径】】】
例:
	vim +100 /etc/sudoers  //就会打开sudoers文件,到里面的100行   

三、小问题

当文件异常退出时,再次编辑文件会无法编辑。

解决办法:

1.继续vi/vim编辑这个文件,按R(返回上次编辑内容)或D(删除上次编辑的内容)

2.直接删除本地的隐藏文件.swp(这个是编辑时的临时文件,保存后会覆盖原文件)


03-完

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值