注:以下命令最好自己打一遍,看看有什么不同(除了关机命令)
1. ls指令
功能
:对于目录,该命令列出该目录下的所有子目录与文件,对于文件,将列出文件名以及其他信息。
常用选项:
-a
列出目录下的所有文件,包括以
.
开头的隐含文件。
-d
将目录象文件一样显示,而不是显示其下的文件。 如:
ls –d
指定目录
-i
输出文件的
i
节点的索引信息。 (inode 节点)
-k
以
k
字节的形式表示文件的大小。
-l
列出文件的详细信息。
-n
用数字的
UID,GID
代替名称。 (
UID:使用者ID;
GID:group ID
)
-F
在每个文件名后附上一个字符以说明该文件的类型,
“*”
表示可执行的普通文件;
“/”
表示目录;
“@”
表 示符号链接;“|”
表示
FIFOs
;
“=”
表示套接字
(sockets)
。(目录类型识别)
-r
对目录反向排序。
-t
以时间排序。
-s
在
l
文件名后输出该文件的大小。(大小排序,如何找到目录下最大的文件)
-R
列出所有子目录下的文件。
(
递归
)
-1
一行只输出一个文件。
02. pwd命令
语法
: pwd
功能
:显示用户当前所在的目录
03. cd 指令
语法
:cd
目录名
功能
:改变工作目录。将当前工作目录改变到指定的目录下。
举例:
cd .. :
返回上级目录
cd /home/litao/linux/ :
绝对路径
cd ../day02/ :
相对路径
cd ~
:进入用户家目
cd -
:返回最近访问目录
04. touch指令
语法
:touch [
选项
]...
文件名(
可以跟多个文件名,创建多个文件)
功能
:
touch
命令参数可更改文档或目录的日期时间,包括存取时间和更改时间,或者新建一个不存在的文件。
常用选项
:
-a
或
--time=atime
或
--time=access
或
--time=use
只更改存取时间。
-c
或
--no-create
不建立任何文档。
-d
使用指定的日期时间,而非现在的时间。
-f
此参数将忽略不予处理,仅负责解决
BSD
版本
touch
指令的兼容性问题。
-m
或
--time=mtime
或
--time=modify
只更改变动时间。
-r
把指定文档或目录的日期时间,统统设成和参考文档或目录的日期时间相同。
-t
使用指定的日期时间,而非现在的时间
05.mkdir指令(重要)
语法
:
mkdir [
选项
] dirname...
功能
:在当前目录下创建一个名为
“dirname”
的目录
常用选项
:
-p, --parents
可以是一个路径名称。此时若路径中的某些目录尚不存在
,
加上此选项后
,
系统将自动建立 好那些尚不存在的目录,
即一次可以建立多个目录
举例:
mkdir –p test/test1 :
递归建立多个目录
06.rmdir指令 && rm 指令(重要):
rmdir
是一个与
mkdir
相对应的命令。
mkdir
是建立目录,而
rmdir
是删除命令。
语法
:
rmdir [-p][dirName]
适用对象
:具有当前目录操作权限的所有使用者
功能
:删除空目录
常用选项
:
-p
当子目录被删除后如果父目录也变成空目录的话,就连带父目录一起删除。
rm
命令可以同时删除文件或目录
语法
:
rm [-f-i-r-v][dirName/dir]
适用对象
:所有使用者
功能
:删除文件或目录
常用选项
:
-f
即使文件属性为只读
(
即写保护
)
,亦直接删除
-i
删除前逐一询问确认
-r
删除目录及其下所有文件
07.man指令(重要):
Linux
的命令有很多参数,我们不可能全记住,我们可以通过查看联机手册获取帮助。访问
Linux
手册页的命令是
man
语法
: man [
选项
]
命令
常用选项
-k
根据关键字搜索联机帮助
num
只在第
num
章节找
-a
将所有章节的都显示出来,比如
man printf 它缺省从第一章开始搜索,知道就停止,用a选项,他会继续往后面搜索,直到所有章节都搜索完毕,当按下q
退出。
解释一下
,
面手册分为
8
章
1
是普通的命令
2
是系统调用
,
如
open,write
之类的
(
通过这个,至少可以很方便的查到调用这个函数,需要加什么头文件)
3
是库函数
,
如
printf,fread4
是特殊文件
,
也就是
/dev
下的各种设备文件
5
是指文件的格式
,
比如
passwd,
就会说明这个文件中各个字段的含义
6
是给游戏留的
,
由各个游戏自己定义
7
是附件还有一些变量
,
比如向
environ
这种全局变量在这里就有说明
8
是系统管理用的命令
,
这些命令只能由
root
使用
,
如
ifconfig
08.cp指令(重要):
语法
:
cp [
选项
]
源文件或目录 目标文件或目录
功能
:
复制文件或目录
说明
: cp
指令用于复制文件或目录,如同时指定两个以上的文件或目录,且最后的目的地是一个已经存在的目录, 则它会把前面指定的所有文件或目录复制到此目录中。若同时指定多个文件或目录,而最后的目的地并非一个已存 在的目录,则会出现错误信息
常用选项
:
-f
或
--force
强行复制文件或目录, 不论目的文件或目录是否已经存在
-i
或
--interactive
覆盖文件之前先询问用户
-r
递归处理,将指定目录下的文件与子目录一并处理。若源文件或目录的形态,不属于目录或符号链 接,则一律视为普通文件处理
-R
或
--recursive
递归处理,将指定目录下的文件及子目录一并处理
09mv指令(重要):
mv
命令是
move
的缩写,可以用来移动文件或者将文件改名(
move (rename) files
),是
Linux
系统下常用的命令,经常用来备份文件或者目录。
语法
: mv [
选项
]
源文件或目录 目标文件或目录
功能
:
1.
视
mv
命令中第二个参数类型的不同(是目标文件还是目标目录),
mv
命令将文件重命名或将其移至一个新的目录中。
2.
当第二个参数类型是文件时,
mv
命令完成文件重命名,此时,源文件只能有一个(也可以是源目录名),它将所给的源文件或目录重命名为给定的目标文件名。
3.
当第二个参数是已存在的目录名称时,源文件或目录参数可以有多个,
mv
命令将各参数指定的源文件均移至目标目录中。
常用选项
:
-f
:
force
强制的意思,如果目标文件已经存在,不会询问而直接覆盖
-i
:若目标文件
(destination)
已经存在时,就会询问是否覆盖!
10 cat
语法
:
cat [
选项
][
文件
]
功能
: 查看目标文件的内容
常用选项
:
-b
对非空输出行编号
-n
对输出的所有行编号
-s
不输出多行空行——压缩空行,即使存在多行空行,只会显示一行空行;
11.more指令
语法
:
more [
选项
][
文件
]
功能
:
more
命令,功能类似
cat
常用选项
:
-num (num是数字)一次显示多少行
+num:从num行开始显示;
q
退出
more
12..less指令(重要)
less
工具也是对文件或其它输出进行分页显示的工具,应该说是
linux
正统查看文件内容的工具,功能极其强大。
less
的用法比起
more
更加的有弹性。在
more
的时候,我们并没有办法向前面翻, 只能往后面看
但若使用了
less
时,就可以使用
[pageup][pagedown]
等按键的功能来往前往后翻看文件,更容易用 来查看一个文件的内容!
除此之外,在
less
里头可以拥有更多的搜索功能,不止可以向下搜,也可以向上搜。
语法:
less [
参数
]
文件
功能
: less与
more
类似,但使用
less
可以随意浏览文件,而
more
仅能向前移动,却不能向后移动,而且
less
在查看之前不会加载整个文件。(他是进入文件中查看)
选项
:
-i
忽略搜索时的大小写
-N
显示每行的行号
/
字符串:向下搜索
“
字符串
”
的功能
?
字符串:向上搜索
“
字符串
”
的功能
n
:重复前一个搜索(与
/
或
?
有关)
N
:反向重复前一个搜索(与
/
或
?
有关)
q:quit
13.head指令
head
与
tail
就像它的名字一样的浅显易懂,它是用来显示开头或结尾某个数量的文字区块,
head
用来显示档案的
开头至标准输出中,而
tail
想当然尔就是看档案的结尾。
语法:
head [
参数
]... [
文件
]...
功能
:
head
用来显示档案的开头至标准输出中,默认
head
命令打印其相应文件的开头
10
行。
选项
:
-n<
行数
>
显示的行数
14.tail指令
tail
命令从指定点开始将文件写到标准输出
.
使用
tail
命令的
-f
选项可以方便的查阅正在改变的日志文件
,tail - f filename会把
filename
里最尾部的内容显示在屏幕上
,
并且不但刷新
,
使你看到最新的文件内容
.
语法:
tail[
必要参数
][
选择参数
][
文件
]
功能:
用于显示指定文件末尾内容,不指定文件时,作为输入信息进行处理。常用查看日志文件。
选项:
-f
循环读取
-n<
行数
>
显示行数
举例:
有一个文件共有
100
行内容,请取出第
50
行内容
<br>
seq 1 100 > test #
生成
1
到
100
的序列装入
test
方法
1 head -n50 test > tmp #
将前
50
行装入临时文件
tmp
tail -n1 tmp #
得到中建行
方法
2 head -n50 test | tail -n1
15.时间相关的指令
date
显示
date
指定格式显示时间:
date +%Y:%m:%d
date
用法:
date [OPTION]... [+FORMAT]
1.
在显示方面,使用者可以设定欲显示的格式,格式设定为一个加号后接数个标记,其中常用的标记列表如下
%H :
小时
(00..23)
%M :
分钟
(00..59)
%S :
秒
(00..61)
%X :
相当于
%H:%M:%S
%d :
日
(01..31)
%m :
月份
(01..12)
%Y :
完整年份
(0000..9999)
%F :
相当于
%Y-%m-%d
2.
在设定时间方面
date -s //
设置当前时间,只有
root
权限才能设置,其他只能查看。
date -s 20080523 //
设置成
20080523
,这样会把具体时间设置成空
00:00:00
date -s 01:01:01 //
设置具体时间,不会对日期做更改
date -s “01:01:01 2008-05-23″ //
这样可以设置全部时间
date -s “01:01:01 20080523″ //
这样可以设置全部时间
date -s “2008-05-23 01:01:01″ //
这样可以设置全部时间
date -s “20080523 01:01:01″ //
这样可以设置全部时间
3.
时间戳
时间
->
时间戳:
date +%s
时间戳
->
时间:
date -d@1508749502
Unix
时间戳(英文为
Unix epoch, Unix time, POSIX time
或
Unix timestamp
)是从
1970
年
1
月
1
日(
UTC/GMT
的 午夜)开始所经过的秒数,不考虑闰秒
16.Cal指令
cal
命令可以用来显示公历(阳历)日历。公历是现在国际通用的历法,又称格列历,通称阳历。
“
阳历
”
又名
“
太阳 历”
,系以地球绕行太阳一周为一年,为西方各国所通用,故又名
“
西历
”
。
命令格式
:
cal [
参数
][
月份
][
年份
]
功能
: 用于查看日历等时间信息,如只有一个参数,则表示年份
(1-9999)
,如有两个参数,则表示月份和年份
常用选项
:
-3
显示系统前一个月,当前月,下一个月的月历
-j
显示在当年中的第几天(一年日期按天算,从
1
月
1
号算起,默认显示当前月在一年中的天数)
-y
显示当前年份的日历
举例:c
al –y 2018//指定查看2018年日历 ; cal 6 2024//打印2024年6月份的日历
17.find指令:(灰常重要) -name
Linux
下
find
命令在目录结构中搜索文件,并执行指定的操作。
Linux
下
find
命令提供了相当多的查找条件,功能很强大。由于
find
具有强大的功能,所以它的选项也很
多,其中大部分选项都值得我们花时间来了解一下。
即使系统中含有网络文件系统
( NFS)
,
find
命令在该文件系统中同样有效,只你具有相应的权限。
在运行一个非常消耗资源的
find
命令时,很多人都倾向于把它放在后台执行,因为遍历一个大的文件系
统可能会花费很长的时间
(
这里是指
30G
字节以上的文件系统
)
。
语法:
find pathname -options
功能:
用于在文件树中查找文件,并作出相应的处理(可能访问磁盘)
常用选项:
-name
按照文件名查找文件
18.grep指令
grep
参考文档
语法:
grep [
选项
]
搜寻字符串 文件
功能:
在文件中搜索字符串,将找到的行打印出来
常用选项:
-i
:忽略大小写的不同,所以大小写视为相同
-n
:顺便输出行号
-v
:反向选择,亦即显示出没有
'
搜寻字符串
'
内容的那一行
19.zip/unzip指令:
语法:
zip
压缩文件
.zip
目录或文件
功能:
将目录或文件压缩成
zip
格式
常用选项:
-r
递 归处理,将指定目录下的所有文件和子目录一并处理
举例:
将
test2
目录压缩:
zip test2.zip test2/*
解压到
tmp
目录:
unzip test2.zip -d /tmp
20.bc指令:
bc
命令可以很方便的进行浮点运算
21.tar指令(重要):打包/解包,不打开它,直接看内容
tar [-cxtzjvf]
文件与目录
....
参数
:
-c
:建立一个压缩文件的参数指令
(create
的意思
)
;
-x
:解开一个压缩文件的参数指令!
-t
:查看
tarfile
里面的文件!
-z
:是否同时具有
gzip
的属性?亦即是否需要用
gzip
压缩?
-j
:是否同时具有
bzip2
的属性?亦即是否需要用
bzip2
压缩?
-v
:压缩的过程中显示文件!这个常用,但不建议用在背景执行过程!
-f
:使用档名,请留意,在
f
之后要立即接档名喔!不要再加参数!
-C
: 解压到指定目录
22.uname –r指令:
语法
:
uname [
选项
]
功能
:
uname
用来获取电脑和操作系统的相关信息。
补充说明
:
uname
可显示
linux
主机所用的操作系统的版本、硬件的名称等基本信息。
常用选项:
-a
或
–all
详细输出所有信息,依次为内核名称,主机名,内核版本号,内核版本,硬件名,处理器类
型,硬件平台类型,操作系统名称
23.重要的几个热键[Tab],[ctrl]-c, [ctrl]-d
[Tab]
按键
---
具有『命令补全』和『档案补齐』的功能
[Ctrl]-c
按键
---
让当前的程序『停掉』
[Ctrl]-d
按键
---
通常代表着:『键盘输入结束
(End Of File, EOF
戒
End OfInput)
』的意思;另外,他也可
以用来取代
exit
24.关机
语法
:
shutdown [
选项
] **
常见选项:
**
-h
: 将系统的服务停掉后,立即关机。
-r
: 在将系统的服务停掉之后就重新启动
-t sec
:
-t
后面加秒数,亦即『过几秒后关机』的意思
25.以下命令作为扩展:
◆ 安装和登录命令
:
login
、
shutdown
、
halt
、
reboot
、
install
、
mount
、
umount
、
chsh
、
exit
、
last
;
◆ 文件处理命令:
file
、
mkdir
、
grep
、
dd
、
find
、
mv
、
ls
、
diff
、
cat
、
ln
;
◆ 系统管理相关命令
:
df
、
top
、
free
、
quota
、
at
、
lp
、
adduser
、
groupadd
、
kill
、
crontab
;
◆ 网络操作命令
:
ifconfig
、
ip
、
ping
、
netstat
、
telnet
、
ftp
、
route
、
rlogin
、
rcp
、
finger
、
mail
、
nslookup
;
◆ 系统安全相关命令:
passwd
、
su
、
umask
、
chgrp
、
chmod
、
chown
、
chattr
、
sudo ps
、
who
;
◆ 其它命令:
tar
、
unzip
、
gunzip
、
unarj
、
mtools
、
man
、
unendcode
、
uudecode
。