Linux基本指令(2)

echo命令,打印后序内容,一般用单引号括着,把其中内容当成字符串

printf命令,打印

我们想单纯回显打印字符串就用这两个命令

cat 显示指定文件的内容,和echo不同,cat是打印指定文件里面的内容

1、引入知识点:在LInux系统中,一切皆文件!  

推导出来的结论:系统打开时默认打开三个文件:键盘、显示器、显示器 ;我们写的程序printf cout就是把内容写进文件 显示器 中,那么printf cout本质就是文件操作;但是任何文件被操作要先被打开,比如C语言中文件操作时要先fopen打开文件;那么这三个设备文件必须先被打开,我们使用printf等时没有手动打开这三个设备文件,因为它们是系统帮我们打开的。

系统凭什么帮我们打开? 在我们写程序时,默认打开三个文件,stdin(对应键盘)、stdout和stderr(对应显示器);我们使用printf等函数时这三个FILE*类型会默认被封装进printf等函数中;

如何理解系统帮助我们打开?程序被操作时,不是先从main开始,在这之前系统先fopen一些文件;

为什么帮我们打开?为了让用户在默认情况下就能使用,方便。

2、重定向操作:echo 'helloLinux' ,在Linux中打印出hellolinux,实际上是把这个字符串写入显示器文件,我们可以把这个字符串写入其他文件,使用输出重定向操作,echo '……' > file1,那么字符串就被写入file1文件里面了;如果file1不存在,> 会进行新建文件,每次进行重定向时 ,> 会先清空文件内容再写入;那么可以推出新建文件时可以直接  > 文件名  此时建立了一个新的普通空文件,同时可以推出,当file1不为空时,直接 > file1 那么file1就被清空了

示例:

文件存在时先清空文件再写入

文件不存在是先新建文件再写入

根据上述特性,>单独使用时,文件不存在就新建,文件存在且不为空,就清空文件

不想清空再写入,使用 >> 这种重定向叫作追加重定向;echo默认在字符串尾部有换行

cat 默认从键盘文件读取写入进显示器文件,比如只使用cat命令,回车之后输入aa再回车,显示出aa;推出 cat <  file1,就是把file1中的内容写入显示器文件,< 叫作输入重定向

在C语言中,进行文件操作时,w方式打开文件:文件不存在新建,存在先清空文件再写入;a打开方式,追加写入。这两种打开方式对应 > 和 >>;现在在Linux里面的重定向操作实际上在以后就是C语言中的文件操作。

3、用一个实验1和2联系起来

打开多个终端,可以用重定向操作在一个终端输入命令,效果显示在另一个终端上面;说明终端就是文件,印证了在Linux下一切皆文件这句话;

ll /dev/pts/……  显示是哪个终端,开始默认是0,后面依次是1、2、3、4……;

在第一个终端界面

打开第二个终端界面

在第一个终端用重定向,操作进第二个终端并且显示效果:

 

 4、文件类型

- 开头为普通文件

d开头为目录文件;

c 开头为字符文件:比如键盘、显示器、终端;字符文件的输入具有顺序性

b 开头为块文件,比如磁盘;块文件支持随机读写

如果直接打开块文件,写东西,相当于把物理盘打开,会出现覆盖的问题,并且你还不知道写在哪里了;

l 开头为链接文件

p 开头为管道文件

Linux下不看文件后缀区分文件类型,大部分文件在linux下都是普通文件(比如文本、可执行、图片、库等等);但是并不代表linux下不用文件后缀,比如编译文件时,gcc不识别.txt后缀的文件,而识别.c后缀的文件;说明系统不关心后缀,但是工具关心文件后缀(比如gcc)

指令:

1、mv:

剪切文件,改变文件的位置 mv srcfile dstdir,srcfile可以是普通文件也可以是目录 ;对一个指定文件进行重命名 mv file1 file2 将file1文件名重命名为file2,当然file2文件在当前目录不存在,对于目录重命名也是,后面的目录名不存在时就是重命名

将指定文件(可以是目录)剪切到指定目录

第二个参数是文件(目录)且不存在时,进行文件(目录)重命名

2、cat

默认把文件内容向显示器打印;cat -n 打印内容时,显示行号;

3、tac

相对于cat,反向显示文件内容;一般用在查看大型文件内容时,想要查看最开始的内容;比如查看日志时,tac /var/log/messages

4、more

查看文件,开始时只显示当前屏幕能容纳的文件内容,需要按回车查看下面的内容,但是只能向下查看,不能再向上查看了

显示内容时,输入 / 加上字符串可以直接查看到这个字符串所在的文件位置,并且显示出这一页的内容,若是多个出现按n表示next逐页查看

文件中有一千行 hellolinux 行号 ;其中第三132行的hellolinux改成了helloworld,用more查找这行

5、less

相比于more 可以向上查看,按住向上向下键

也可以查找和more一样

6、head、tail

查看文件头部和结尾的内容,head -数字 文件  查看文件开头指定数字行的内容

查看中间部位:head -num1 文件 | tail -num2;意思就是先查看出前num1行的内容,再查看这部分内容的后num2行的内容,相当于就是查看中间部分的内容

引出知识点:

| 命令 是一个管道文件 ;可以用来作命令的级联;比如 cat file | head -num1 | tail -num2 | tac,反向打印中间部分内容

7、date

显示时间,加上选项(选项最开始又加上‘+’)可以设置打印出来的时间的格式:%Y表示年,%m表示月,%d表示天,%F相当于%Y-%m-%d;%H表示时、%M表示分钟、%S表示秒,%X相当于%H:%M:%S;

引入的知识点:计算机已经关机了为什么开机之后还能准确的记录时间?因为电脑主板上有一个纽扣电池,关机后还有电可以维持两到三周的时间,纽扣电池可以记录时间;若是关机时间很长,纽扣电池点亮耗尽,那么再打开电脑时时间就会出错

date +%s 显示时间戳

时间戳是从1970年1月1日午夜开始所经过的秒数,不考虑闰年秒操作系统层面上时间戳可以帮助我们查看时间,用户层面上可以帮助我们查看文件某一段时间区间的内容

8、cal

查看日历信息;cal 月份 年份;只有一个参数就显示这年的日历,两个参数,显示这年这月的日历

9、find

find是一个很强大的查找命令

find 目录 -name 文件

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值