Linux文件操作命令

文件操作的命令:
1.创建一个文件:
(1)创建一个普通文件:
.c.txt .cpp .h.java
shell脚本语言不需要后缀名

命令:touchmain.c
gcc -o a.out test 提示出错,因为gcc只认识.c文件
对操作系统来说所有的后缀名都认为是文本文档,没有意义,但是对gcc来说他只认识.c文件.
文件结束标志EOF占一个字节
(2)目录文件:
命令: mkdir dir1

2.删除一个文件:
(1)删除普通文件:rm main.c
(2)删除目录文件:rmdir dir1:仅删除目录,目录下的文件怎么办?
a.先将目录下的文件一一删除,再删除空的目录文件
b.循环 时间复杂度太高
c.递归 rm -r dir1:先扫描该文件下有么有子目录,有再进去看子目录下还有没有子目录

3.cpy:
(1)cp test.c dir1
cp test dir1/main.c 拷贝并重命名
(2)拷贝目录文件:cp -r dir1 dir2

4.move:移动,相当于剪切
(1)普通文件 mv test.c dir2
(2)移目录: mv dir2 dir1
为什么删除拷贝的时候需要递归而移动不需要递归?与他的文件系统有关,移动的时候只是把的检索路径改一下

5.重命名:
普通和目录命令一样:mva.cb.c

6.编辑文件内容:
(1)目录文件:
内容:子目录 文件
(2)普通文件:默认编辑器 vi很难用,一般用vim
vim  main.c
编辑的3种模式:
命令模式:因为鼠标没用,对文件里的内容进行整体的控制,拷贝n行啦这样的批处理,ESC切命令模式
yy p 复制并粘贴一行
6yy p 复制并粘贴六行
yy是复制p是粘贴
dd 删除光标所在的一行
5dd 删除5行
u 撤销
shift+4
shift+6
shift+m等
定位使用末行模
命令模式进插入模式的四种方式:
1.i:在光标处写入
2.o:光标到下一行
3.O:光标到上一行
4.a:在光标的下一个位置写入
插入模式:
末行模式:保存 退出 显示行号 强制退出等对文件的设置
w newfile另存为
w 保存
set nu 显示行号
set nonu 取消行号

检索进末行模式:
/o /o进下一个o
/?o 向上检索

7.查看文件内容:
(1)more main.c 显示main.c中的所有内容
(2)cat main.c 显示结果和1一样
(3)less main.c 查看 按q可以撤销显示
(4)head -3 main.c
(5)tail -3 main.c
head –nummian.c:只看前几行信息
tail –nummain.c:只看后几行信息

cat命令:
命令行的空格是用来做参数区分的
可以用+空格来表示空格
cat more filename 将文件内容显示到终端界面
more一点一点显示 q退出
cat 全部显示

cat本身是做文件的合并
1.a.c:abcd
b.c:efgh
more a.cb.c:显示
cat a.cb.c:显示
cat a.cb.c>c.c:合并
如果c.c里有内容 将会全部覆盖,原理??
2.more a.c>c.c 可行
more a.cb.cc.c>d.c 可变参数的命令
cat>e.c
this is linux
回车 ctrl c 结束 不回车相当于没写成功 这样的实在输入缓冲区内写的 遇到回车才会将缓冲区的内容保存
moree.c
3.一个>是覆盖
两个>>是追加

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值