Linux入门1——初识Linux指令

简介: Linux入门1——初识Linux指令

0. 几个入门指令

whoami ——查看当前账号是谁

who ——当前有哪些人登录

pwd ——查看当前所处的工作目录

ls/ls -l ——查看当前目录下的文件信息

(空目录,所以不显示)

clear ——清屏


1. ls 入门指令

语法: ls [选项][目录或文件];

功能:对于目录,该命令列出该目录下的所有子目录与文件。对于文件,将列出文件名以及其他信息。


ls ——查看当前目录有哪些文件

(空目录,所以无文件)


ls -l ——以列表形式查看当前目录有哪些文件

(空目录,所以无文件)


ls -a ——显示当前目录的隐藏文件

在Linux中,隐藏文件通常以 . 开头,隐藏文件默认不显示。

-a中的a有all的意思,ls -a意即显示当前目录下的所有文件,包括隐藏文件。


ls -la ——以列表形式显示当前目录的隐藏文件


此外,① ls -la /② ls -al /③ ls -l -a /④ ls -a -l 这几个指令的功能一模一样


关于ls指令,其实最常用的指令为 ll (等价于ls -l)和 ll -a (等价于ls -la)。


2. pwd 命令

语法:pwd;

功能:显示用户当前所在的目录。

pwd为print working directory的缩写,意即打印当前工作目录。

Linux系统的pwd命令显示的结果就相当于windows系统的文件目录:


3. cd 命令

语法:cd 目录名;

功能:改变工作目录,将当前工作目录改变到指定的目录下。


在ls指令里,我们看到了 . .. 这两个隐藏文件,那么这两个文件有什么含义呢?

其实在每个目录下都存在这两个文件, . 表示当前文件, .. 表示返回上级目录。


cd . ——进入当前目录


cd .. ——返回上级目录

其实,Linux下的 cd .. 命令就相当于windows系统下的:


此外,还应该了解的是:windows系统下的目录分隔符为反斜杠: \

而Linux下的目录分隔符为斜杠: /

可我们一直 cd .. 得到的结果为一个单独的 / :

这个 / 也是目录,叫做根目录,根目录的 . .. 都指向自己。


穿插一个知识:Linux下的目录其实是以 / 目录为根节点的多叉树 ,为验证其多叉树结构我们使用:

tree . 当前目录以树状结构显示

(需在root账号下以yum install -y tree命令安装)


cd 目录名 ——绝对路径

我们从 / 目录开始,定位一个叶子节点的方式,形成的路径称为绝对路径

示例:


cd .. 目录名——相对路径

相对于自身当前所处的目录为参考点,定位到一个文件的路径称为相对路径

示例:


cd - ——跳转回最近一次访问的目录

(与Windows下的Alt+Tab键有异曲同工之妙)


cd ~ ——进入用户家目录

默认登录的时候,默认所处的路径,就是当前登录用户的家目录;

比如我是root用户,root的家目录就是/root。


4. touch指令

语法:touch [选项]... 文件...;

功能:touch命令参数可更改文档或目录的日期时间,包括存取时间和更改时间,或者新建一个不存在的文件。


补充指令:

stat 文件名 ——查看文件更详细的属性信息:

对于此命令得到的ACM时间的含义为:

Access Time简称atime,表示文件最后一次被访问的时间(对文件读取、执行、查看都会更新此时间);

Modify Time简称mtime,表示文件内容最后一次被修改的时间(对文件内容进行增、删、改都会更新此时间);

Change Time简称ctime,表示文件属性最后一次被修改的时间(文件属性包括所有者、权限等信息,此时间注意与mtime区分)。


5. mkdir指令

语法:mkdir [选项] dirname...;

功能:在当前目录下创建一个名为 “dirname”的目录。


mkdir dir1 ——创建目录


mkdir -p dira/dirb/dirc/dirc ——加-p递归建立多个目录


注意touch指令与mkdir指令的区别:

在Windows下前者相当于新建一个文件,后者相当于新建一个文件夹:


6.rmdir指令与rm 指令

rmdir是一个与mkdir相对应的命令。mkdir是建立目录,而rmdir是删除目录。


rmdir 目录名 ——删除空目录


rmdir只能删除空目录,不能删除文件,rm命令可以同时删除文件或目录,所以用rm命令比rmdir更多。


 rm -r 目录名 ——递归删除不为空的目录(需要用户确认y/n)


rm -rf 目录名 ——强制删除目录(不需要用户确认)


rm 文件名 ——删除文件 (询问)


rm -f 文件名 ——删除文件(不需要询问)


关于rm命令总结一下:

rm后不带r删除的是文件,带r删除的是目录;(文件/目录—>r)

rm后不带f表示询问删除,带f表示强制删除。(询问/不询问—>f)


rm -i 文件名 ——删除前逐一询问确认


rm -rf *  ——删除指定路径下的所有文件(*通配符,意思是指定路径下的所有文件)

(注意此命令不会删除该目录下的隐藏文件,如若删除,命令为:rm -r 隐藏的文件名


7. man 指令

Linux有很多参数,我们不能完全记住,那么Linux总有一个“男人”在等着我们问他问题。

语法: man [选项] 命令(不带选项默认从第1章开始找,逐级往下找,直到找到为止)

man 手册分为9章:

1. 可执行程序或 shell 命令;

2 .系统调用(内核提供的函数);

3 .库调用(程序库中的函数);

4 .特殊文件(通常位于 /dev 目录中);

5 .文件格式和约定(例如 /etc/passwd);

6 .游戏;

7 .杂项(包括宏包和约定),例如 man(7)、groff(7);

8 .系统管理命令(通常仅限于 root 用户);

9 .内核例程(非标准)。

比如我们不知道ls指令的用法:


8. cp 指令

学习cp指令之前先了解一下Linux下的记事本功能:

(需要先用yum install -y nano指令安装)

nano file.txt ——在当前目录下写入记事本


语法:cp [选项] 源文件或目录 目标文件或目录;

功能: 复制文件或目录;

说明: cp指令用于复制文件或目录,如同时指定两个以上的文件或目录,且最后的目的地是一个已经存在的目录, 则它会把前面指定的所有文件或目录复制到此目录中。若同时指定多个文件或目录,而最后的目的地并非一个已存在的目录,则会出现错误信息 (在下面④中会有体现)。


cp 文件名 .. ——将当前目录下的文件拷贝到上级目录


cp 文件名 新文件名 ——将当前目录下的文件拷贝到当前目录(同级目录不能有同名文件,故改名)


cp -rf 目录名 新目录 ——将目录拷贝到新目录

cp -rf /root/dir1/* test ——将目标目录的所有文件拷贝到当前目录

(同cd命令时说的 . .. 一样,隐藏文件不会被复制)


9.mv 指令

mv命令是move的缩写,可以用来移动文件或者将文件改名(move (rename) files),是Linux系统下常用的命令,经常用来备份文件或者目录。(即:cp是复制,mv是剪切)

语法: mv [选项] 源文件或目录 目标文件或目录;

功能: 1. 视mv命令中第二个参数类型的不同(是目标文件还是目标目录),mv命令将文件重命名或将其移至一个新的 目录中;

2. 当第二个参数类型是文件时,mv命令完成文件重命名,此时,源文件只能有一个(也可以是源目录名),它 将所给的源文件或目录重命名为给定的目标文件名;

3. 当第二个参数是已存在的目录名称时,源文件或目录参数可以有多个,mv命令将各参数指定的源文件均移至 目标目录中。


mv /root/dir/test dir1 ——剪切目录


mv /root/dir1 dir2 ——重命名


 mv /root/dir2/test/file.txt1 /root/dir2/test/d1/file.txt ——剪切文件并重命名

10. cat 指令

语法:cat [选项][文件];

功能: 查看目标文件的内容。


cat 文件名 ——显示文件内容

在cp指令里,我们用nano写入了一段代码,现在我想查看一个写入的内容:


了解了nano命令可以向文件里写入内容,再来了解一下echo:默认向显示器打印

echo 字符串 ——显示字符串内容

那么这时"hello linux"并没有存进文件,怎么像nano那样存进文件呢?

echo 字符串 > 文件名 ——创建新文件并将字符串写入(如果直接echo > 文件名/> 文件名就相当于touch了一个新文件)


> 介绍:输出重定向,echo 本来默认向显示器打印的,现在加上>就改变了打印方向,变成了向文件内部写入,这个过程就叫做输出重定向。

>输出重定向,每次都会清空原始文件,然后再写入;所以>一来可以新建空文件二来可以清空目标文件。


>每次写入时都要清空原文件然后再写入,那么我需要往文件里增加新数据,不要清空,这时该怎么办呢?

echo 字符串 >> 文件名 ——向目标文件新增数据

>> 介绍:追加重定向,在原始内容的基础上新增内容。


继续cat命令:

cat -n 文件名 ——输出的所有行编号

cat -s 文件名 ——不输出多行空行

cat -b 文件名 ——对非空行输出行编号

tac 文件名 ——逆向显示文件内容


11.more/less指令

如果我要查看一个大文件,比如一个一万行的文件,用cat命令就不太方便,如图:

此时用more+文件名就可以输出为静态,我们每按一下回车就会显示一行:

more 文件名 ——按需显示

more命令只能按回车键才能看下一行,其他键都不能使用,more命令只能下翻不能上翻,所以相比于more命令,用的最多的是less命令:

less 文件名 ——按需显示

也可以输入: /要查找的数据  ——自动跳转到要搜索的所在行

12. head/tail指令

head -x 文件名 ——显示文件的前x行

tail -x 文件名 ——显示文件的后x行

head -x 文件名| tail -y ——查看文件从第x行开始的y行

(此命令中的 | 是命令行管道)


13. 时间相关的指令

date 指定格式显示时间: date +%Y:%m:%d;

时间->时间戳:date +%s;

时间戳->时间:date -d@1508749502


14.cal指令

Windows下有日历功能:

那么Linux有没有日历呢?答案当然是有的:

常用选项:

-3 显示系统前一个月,当前月,下一个月的月历;

-j   显示在当年中的第几天(一年日期按天算,从1月1号算起,默认显示当前月在一年中的天数);

-y  显示当前年份的日历。


15. find指令

Linux下find命令在目录结构中搜索文件,并执行指定的操作。

举例:-name   按照文件名查找文件。


16. which/where指令

which 指令 —— 搜索某个指令存在哪个目录下。

whereis name ——搜索包括安装包、指令、文档等的存放路径


17. grep指令

语法: grep [选项] 搜寻字符串文件;

功能: 在文件中搜索字符串,将找到的行打印出来;

常用选项:

-i :忽略大小写的不同,所以大小写视为相同;

-n :顺便输出行号;

-v :反向选择,亦即显示出没有 '搜寻字符串' 内容的那一行。


18. zip/unzip指令

语法: zip 压缩文件.zip 目录或文件;

功能: 将目录或文件压缩成zip格式。

将test2目录压缩:zip test2.zip test2/*;

(需要用yum install -y zip指令安装)

解压到tmp目录:unzip test2.zip -d /tmp。

(需要用yum install -y unzip指令安装)


19. uname指令

语法:uname [选项] ;

功能: uname用来获取电脑和操作系统的相关信息;

说明:uname可显示linux主机所用的操作系统的版本、硬件的名称等基本信息。

uname -a或–all ——详细输出所有信息,依次为内核名称,主机名,内核版本号,内核版本,硬件名,处理器类 型,硬件平台类型,操作系统名称

相关文章
|
1月前
|
机器学习/深度学习 安全 网络协议
Linux防火墙iptables命令管理入门
本文介绍了关于Linux防火墙iptables命令管理入门的教程,涵盖了iptables的基本概念、语法格式、常用参数、基础查询操作以及链和规则管理等内容。
193 73
|
18小时前
|
机器学习/深度学习 Linux 编译器
Linux入门3——vim的简单使用
Linux入门3——vim的简单使用
30 1
|
3天前
|
人工智能 Unix Linux
装杯 之 Linux指令
本文介绍了Linux操作系统的基本命令。首先欢迎各位进入Linux的世界,并展示了`ls`命令,用于列出目录下的文件和子目录。接着介绍了`pwd`命令,用于显示当前目录;`cd`命令,用于切换目录;`mkdir`命令,用于创建目录;`touch`命令,用于创建普通文件或修改文件时间戳;`rmdir`命令,用于删除空目录;以及`rm`命令,用于删除文件或目录。通过这些基本命令,你可以开始探索和管理Linux系统。
|
18小时前
|
Linux Go 数据安全/隐私保护
Linux入门2——初识Linux权限
Linux入门2——初识Linux权限
12 0
|
2月前
|
Java Shell Linux
【Linux入门技巧】新员工必看:用Shell脚本轻松解析应用服务日志
关于如何使用Shell脚本来解析Linux系统中的应用服务日志,提供了脚本实现的详细步骤和技巧,以及一些Shell编程的技能扩展。
37 0
【Linux入门技巧】新员工必看:用Shell脚本轻松解析应用服务日志
|
2月前
|
存储 Ubuntu Linux
Linux基础入门
Linux基础入门
22 1
|
2月前
|
存储 人工智能 Ubuntu
Linux指令学习(一)
Linux指令学习(一)
66 0
|
2月前
|
Ubuntu Linux Shell
Linux 终端入门
Linux 终端入门
19 0
|
2月前
|
安全 网络协议 Linux
保护你的 Linux VPS:入门指南
保护你的 Linux VPS:入门指南
22 0
|
2月前
|
安全 Unix Linux
【Linux】基本指令
【Linux】基本指令