Linux 命令行使用教程
常用指令
创新互联建站坚持“要么做到,要么别承诺”的工作理念,服务领域包括:做网站、成都网站建设、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的金口河网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!
ls 显示文件或目录
-l 列出文件详细信息l(list)
-a 列出当前目录下所有文件及目录,包括隐藏的a(all)
mkdir 创建目录
-p 创建目录,若无父目录,则创建p(parent)
cd 切换目录
touch 创建空文件
echo 创建带有内容的文件。
cat 查看文件内容
cp 拷贝
mv 移动或重命名
rm 删除文件
-r 递归删除,可删除子目录及文件
-f 强制删除
find 在文件系统中搜索某文件
wc 统计文本中行数、字数、字符数
grep 在文本文件中查找某个字符串
rmdir 删除空目录
tree 树形结构显示目录,需要安装tree包
pwd 显示当前目录
ln 创建链接文件
more、less 分页显示文本文件内容
head、tail 显示文件头、尾内容
ctrl+alt+F1 命令行全屏模式
系统管理命令
stat 显示指定文件的详细信息,比ls更详细
who 显示在线登陆用户
whoami 显示当前操作用户
hostname 显示主机名
uname 显示系统信息
top 动态显示当前耗费资源最多进程信息
ps 显示瞬间进程状态 ps -aux
du 查看目录大小 du -h /home带有单位显示目录信息
df 查看磁盘大小 df -h 带有单位显示磁盘信息
ifconfig 查看网络情况
ping 测试网络连通
netstat 显示网络状态信息
man 命令不会用了,找男人 如:man ls
clear 清屏
alias 对命令重命名 如:alias showmeit="ps -aux" ,另外解除使用unaliax showmeit
kill 杀死进程,可以先用ps 或 top命令查看进程的id,然后再用kill命令杀死进程。
打包压缩相关命令
gzip:
bzip2:
tar: 打包压缩
-c 归档文件
-x 压缩文件
-z gzip压缩文件
-j bzip2压缩文件
-v 显示压缩或解压缩过程 v(view)
-f 使用档名
例:
tar -cvf /home/abc.tar /home/abc 只打包,不压缩
tar -zcvf /home/abc.tar.gz /home/abc 打包,并用gzip压缩
tar -jcvf /home/abc.tar.bz2 /home/abc 打包,并用bzip2压缩
当然,如果想解压缩,就直接替换上面的命令 tar -cvf / tar -zcvf / tar -jcvf 中的“c” 换成“x” 就可以了。
关机/重启机器
shutdown
-r 关机重启
-h 关机不重启
now 立刻关机
halt 关机
reboot 重启
linux命令
*************基本
Shell命令
的使用******
1、在/home目录中创建两个文件夹,分别命名为dir1和dir2,在dir1下创建子目录d1,在dir1下创建子目录d2,分别对目录进行移动和删除的操作。
(1)在终端提示符下输入命令“mkdir
/home/dir1”,在home下创建dir1目录。输入命令“ls
/home”,可以看到dir1创建成功。
(2)在终端提示符下输入命令“mkdir
/home/dir1/d1”,在dir1下创建子目录d1。输入命令“ls
/home/dir1”,可以看到d1创建成功。
(3)在终端提示符下输入命令“mkdir
–p
/home/dir2/d2”,在home下创建子目录dir2,同时在dir2下创建子目录d2。输入命令“ls/home”,可以看到dir2创建成功。
(4)输入命令“cd
/home/dir2”,将工作路径转至/home/dir2。输入命令“ls”,可以看到d2创建成功。
(5)输入命令“cd
..”,将工作路径转至/home。
(6)输入命令“pwd”,显示当前工作路径为“/home”。
(7)输入命令“cd”,将工作路径转至用户主目录。
(8)输入命令“mv
/home/dir1/d1
/home/dir2”,将d1文件夹移动到dir2中。输入命令“ls/home/dir2”和“ls/home/dirl”,可以看到移动成功。
(9)输入命令“rmdir
/home/dir2/dl”,删除dl文件夹。输入命令“ls/home/dir2”,可以看到删除d1成功。
(10)输入命令“rmdir
–p
/home/dir2/d2”,删除dir2和d2文件夹。输入命令“ls
/home”,可以看到删除dir2成功。
2、在/home目录中创建一个名为f1的文件,对其进行复制、移动和删除等基本操作。
(1)在终端提示符下输入命令“cd
/home”,将当前的工作路径转换为/home。
(2)在终端提示符下输入命令“cat
f1”,之后输入f1的文本内容“this
is
f1”,按下Ctrl+D快捷键结束输入。输入命令“ls”可以看到f1创建成功。
(3)在终端提示符下输入命令“cp
f1
dir1”,将f1复制到文件夹dir1中,输入命令“ls
/home/dir1”,可以看到f1复制成功。
(4)输入命令“rm
f1”,删除/home中的f1文件。在出现的提示信息后输入“Y”,输入命令“ls”,可以看到f1删除成功。
(5)输入命令“mv
dirl/fl
/home”,将fl文件从dirl目录
中移动
到/home。输入命令“ls”,可以看到f1移动成功。
3、在/home目录中创建一个名为f2的文件,对其进行查找、统计等基本操作。
(1)在终端提示符下输入命令“cat
f2”,之后输入f2的文本内容如下:
Linux
is
an
operating
system
for
computers.comparable
to
Windows
or
Mac
OS
X.It
was
originally
created
starting
in
1
99
1
by
Finnish
programmer
Linus(pronounced
LEE—nus)
Torvalds
with
the
assistance
of
developers
from
around
the
globe.
按下Ctrl+D快捷键结束输入。再输入命令“ls”可以看到f2创建成功。
(2)输入命令“head
-3
f2”,查看文件前3行文本内容。
(3)输入命令“tail
-2
f2”,查看文件最后两行文本内容。
(4)输入命令“grep‘linux’f2”,查找含有字符串“linux”的文本行。
(5)输入命令“wc
-w
f2”,统计f2中的单词个数。
(6)输入命令“find
f*”,在当前目录中查找以“f”开头的文件。
4、Shell的高级应用。
(1)假定当前的目录是/home,输入命令“cd
d”之后按下
Tab键
,系统自动补全命令“cd
dir1”,按下
回车键
后工作路径从当前的目录转换到/home/dir1下。
(2)输入命令“history
5”显示最近执行的5条命令。
(3)输入命令“alias
cgdir=‘cd
/home’”,为命令“cd
/home”设置别名“cgdir”。输入命令“cgdir”,工作路径从当前的目录转换到/home下。
(4)输入命令“ls
[!a-c]*,显示开头字符不是a、b、c的文件和文件夹。
Linux实用命令有哪些?
1选择
1.1一个文件的名字为rr.Z,可以用来解压缩的命令时()
tar
gzip
compress
uncompress
1.2可以结束进程命令()
kill
ctrl+c
shutdown
halt
1.3 Linux下对文件进行归档的命令为:(多选)
dd
tar
zip
unzip
1.4 Linux查当前目录下30天以前的文件并移动到/dev/null下的命令:(多选)
find.-mtime 30-type f xargs mv{}/dev/null;
find.-mtime+30-type xargs mv{}/dev/null;
find.-mtime+30-type f-exec mv{}/dev/null;
find.-mtime+30-type f-exec rm–rf{};
1.5 dstat与下面哪个命令类似
vmstat
sar
iotop
abc
1.6 rpm安装软件的参数
rpm-ivh
rpm-Ivh
rpm-Uvh
rpm-Iuvh
1.7 yum升级软件包选项
rpm-uvh
rpm-Uvh
1.8查看网络流量命令是?
iftop
nsload
ifstatd
以上命令全可以
1.9停止进程的命令,除了kill还有谁?
pkill
killa
allkill
以上命令都不正确
1.10服务器之间传文件的命令有?
wget
scp
ftp
以上命令都可以
1.11对文件进行归档的命令为
dd
cpio
gzip
tar
1.12在rpm命令中,安装新的rpm包软件使用的参数是()
-i
-v
-h
-e
1.13du命令中,使用友好的方式显示信息的参数是()
-h
-f
-a
-t
1.14将/home/stud1/wang目录做归档压缩,压缩后生成wang.tar.gz文件,并将此文件保存到/home目录下,实现如此任务的tar命令格式___
tar zxvf/home/stud1/wang.tar.gz/home/wang
tar xcvf/home/stud1/wang/home/wang
tar zcv/home/stud1/wang/home/wang
tar zcvf/home/stud1/wang/home/wang.tar.gz
1.15终止一个前台进程可能用到的命令和操作()A:kill
B:CTRL+C
C:shutdown
D:halt
1.16关闭Linux系统(不重新启动)可使用命令()
A:Ctrl+Alt+Del
B:halt
C:shutdown-r now
D:reboot
1.17下列提法中,不属于ifconfig命令作用范围的是__
A:配置本地环回地址
B:配置网卡的IP地址
C:激活网络适配器
D:加载网卡到内核中
1.18有关归档和压缩命令,下面描述正确的是()
A:用uncompress命令解压缩由compress命令生成地后缀为.zip的压缩文件
B:upzip命令和gzip命令可以解压相同类型文件
C:tar归档其压缩的文件可以有gzip命令解压缩
D:tar命令归档后的文件也是一种压缩文件
1.19终止一共前台进程可能用到的命令和操作
kill
ctrl+c
shut down
halt
1.22为了将当前目录下的归档文档myftp,tar解压缩到/tmp目录下,用户可以使用命令
tar xvzf my
tar xvzf my
tar vzf my
tar xvzf my
1.23下面有关linux查看系统负载的命令,说法错误的是?
uptime命令主要用于获取主机运行时间和查询linux系统负载等信息
vmstat命令可以查看cpu负载
sar命令可以查看网络接口信息
free命令可以查看磁盘负载情况
1.24以下哪些方式/命令不可以查看某ip是否可达?
telnet
ping
tracert
top
1.25 tar命令用于解压的参数是?-v-x-c-f
1.26下面哪个命令不是用来查看网络故障?
telnet
ping
init
netstat
1.28为了知道谁在正注册到你的机器上,可以用命令:___
Who users finger ping
1.29查看本网段其他计算机的MAC地址,可先ping对方主机,然后;
arp-g
arp-n
arp-a
arp-d
1.3014日下午2点date+%y%m%d%H%M输出的时间是什么
201711141212
1711141212
2017111412
201711021212
1.31以下哪个命令可以得出1487进程的线程运行情况()
top-Hp 1487
top-Pp 1487
ps-mp 1487
sat-p 1487
1.32从/home/oracle下搜索一个日志文件alert.log,以下哪种方式可达到目的()
find/home./oracle-name alert.log
locate alert.log
find./-mtime 7 alert.log
find/home/oracle-exec alert.log
1.34以下哪些命令可以用来测试网络中特定主机的80端口是否可以访问()
Ping telnet netstat lsof
2填空
2.1测试网络中主机的连通性用什么命令
2.2如何查看numa是否关闭_**_
2.3将/home/stud1/wang目录做归档压缩,压缩后生成wang.tar.gz文件,并将此文件保存到/home目录下,实现如此任务的tar命令格式_**
2.4某个进程使用端口7001,如何快速找到该进程的PID
2.5结束后台进程的命令是**_**
2.6将/home/studl/wang目录做归档压缩,压缩后生成wang.tar.gz文件,并将此存到/home目录下,实现此任务的tar命令格式******__******
2.7 ping100个包的命令——
2.8 linux下,解压缩bz2格式文件的命令是**_**
2.9 linux下,查看网络连接状态的命令是**___**
2.10Linux查看文件系统的命令为__,显示目录或文件占用磁盘的命令为___
2.11通常我们测试网络连通性使用的ping命令,它是通过____协议进行工作的
2.12简述下列命令的各自作用
nslookup
dig
top
traceroute
2.13将/home/stud1/wang目录做归档压缩,压缩后生成wang.tar.gz文件,并将此问价保存到/home目录下,实现此任务的tar命令格****_****
2.14Linux系统查看进程数的命令___
2.15Linux系统查看系统内存的命令:____,**__**
2.16Linux系统查看cpu使用率的命令:____,**__**
2.17Linux系统查看硬盘空间使用率的命令:___
2.18Linux系统将某一文件下的所有.log文件进行打包压缩,命令为___
2.19Linux常用的性能监控命令是:_、_、_、_、_、_等
2.20假设output程序可能输出标准输出和标准错误,请写出一条命令把这两者都忽略__
2.21 rpm软件包安装命令**_**
3简答
3.1查看硬盘结构显示的命令?查看文档命令?编辑文档命令?
3.2配置网络环境的命令,手工修改IP,主机名,DNS和网关
3.3有压缩包a.tar.gz,如何解压该包?如何不解压该包,如何查看该包的内容?
3.4某进程abcd在系统中起了很多,数量难以统计,造成系统负荷较高,如何一条命令确保将此进程全部杀掉
3.5某日志路径是/data/logs/a.txt,如何跟踪该日志,以查看当时的运行状态?
3.6 dmesg命令显示的是哪方面信息
3.7寻找名称为mytest.log的文件
3.8写出du-sh与df-h的区别
3.9查看当前linux服务器是否监听80端口,如果监听,请找出其进程ID,并结束该进程。
3.10使用curl或者wget获取http服务的header信息。
3.11写出查看linux系统性能的命令,如cpu、内存、流量、io等
3.12解释下列命令的意思
dd if=/dev/random of=/dev/sda
3.13如何查看占用端口8080的进程
3.14查着占用内存最多的进程
3.15压缩和解压缩目录/opt/gjsy/所有文件命令
3.16Linxu系统下如何查看8080端口上运行的程序状态
3.17ps aux中的VSZ代表什么意思,RSS代表什么意思?
3.18PING是使用TCP/IP协议中的**_**协议
3.19写出网络故障排查常用的命令**__**
3.20写出你常用的网络抓包工具,软件名称**__**
3.21将/home/stud1/wang目录做归档压缩,压缩后生成wang.tar.gz文件,并将此文件保存到/home目录下,实现此任务的tar命令格式___
3.22解释该命令的含义:nohup zcat test.gz|grep"x6game"~/log.txt
2/dev/null
3.23查看系统硬件负载工具或命令有哪些
3.24使用lsof命令查看占用80端口的进程
3.25如何使用CURL测试POST接口
3.26怎样在目录/home/user/training/下找到扩展名为txt的文件
3.27最常用的网络测试命令有什么?
3.28ping的测试结果中都包含哪些部分?
3.29如何找出占用22端口的进程及进程号?
3.30如何删除当前目录(包含字目录)下所有30天以前创建的文件名后缀为.log的文件
3.31以下一些Linux命令的作用分别是什么?
init 0
chkconfig--level 3 sendmail on
tar-czvf test.tar.gz./
chown-R
ln-s/data/log//var/log/sina_log
umount-f/data0
rpm-ivh baihui.rpm
rpm-qf/bin/ls
3.32LINUX常用命令pwd、top、df、ifconfig、cat分别代表什么含义?
3.33linux常用命令:关机、重启、编辑某文档文件、删除某文件、更改操作系统密码命令分别是什么?
3.34请使用命令:删除/backup目录下10天前的普通文件
3.35如何查看服务器当前连接ip的列表
3.36写出liunx系统中diff、chmod、grep、kill、tar五个常用命令的功能
3.37简述tar-cjvf/tmp/test.tar.gz/root命令中错误及错误原因
3.38Linux系统从A服务器测试B服务器一个tcp端口是否联通使用___
3.39写一个脚本查找最后创建时间使3天前,后缀是*.log的文件并删除
3.40linux如何根据进程ID查找启动程序的路径
3.41查看占用swap的进程id
3.42列出linux常见打包工具并写相应解压缩参数(至少三种)
3.43Linux中锁定一个文件用什么命令?他和md5sum有什么区别?
3.44如何在系统中查找所有所属用户为user1的文件
3.45查看某个文件或者文件夹占用磁盘空间大小的命令
3.46如何查看远程linux系统运行了多少时间?我的服务器内存,cpu,硬盘都是多少,系统版本,linux会优先将数据缓存到内存中,我的机器真实内存消耗实际上是多少
3.47查看服务器当前开启了哪些端口?如何查看某服务器是否存在IO压力
3.48如何查看某个文件system.log被哪些进程占用
扩展
1.21在退出unix系统账户之后还需要继续运行某个进程,那么可用()
awk sed crontab nohup screen
1.20使用trace命令的目的是()
可用的,十分成功的测试手段
非常基本的测试手段
把IP地址和DNS加入路由表中
在源到目标传输的过程中查找失散点
1.27哪个变量用来指定一个远程x应用程序将输出放到哪个x server上
TERM
DISPLAY
ECHO
OUTPUT
1.33P系列服务器被用做文件服务器,所有的用户文件存都放在一非rootvg的文件系统上,用什么方法可以快速备份和恢复这些数据和文件系统的定义()
tar
cpio
savefs
savevg
Linux系统与设置命令
在前面的两个章节中,我们主要介绍了Linux基本知识和虚拟机的安装,从当前章节开始,我们一起学习下Linux的基本命令,在当前章节,我们先简单的学习下一些系统的基本命令,慢慢的由浅入深,在后面的章节中我们将学习其他的命令比如文件操作、备份压缩等
命令我们可以理解成在Windows中我们常常为了查看ip输入的ipconfig,在Linux中也有很多的命令,比如操作目录、文件、网络、磁盘等等命令
使用者权限:管理员用户
参数说明:
添加用户czbk(传智播客的首拼)执行
我们使用useradd命令创建了一个用户czbk
useradd 可用来建立用户帐号。帐号建好之后,再用 passwd 设定帐号的密码。
执行如下
由上图我们发现,我们在使用useradd新增用户的时候,出现了权限不足,也就是说我们使用用户itcast没有创建用户的权限。
我们通过管理员账号root进行创建,首先我们从控制台中切换到root
在 密码的地方输入我们的root密码【root】即可进入到root用户下。
我们在root下继续创建czbk用户
以下是useradd常用选项
用户管理的一项重要内容是用户口令的管理。用户账号刚创建时没有口令,但是被系统锁定,无法使用,必须为其指定口令后才可以使用
使用者权限:管理员用户
指定和修改用户口令的Shell命令是 passwd 。超级用户可以为自己和其他用户指定口令,普通用户只能用它修改自己的口令。命令的格式为:
可使用的选项:
设置当前用户的口令
此处我们设置密码和itcast账号密码一致,为【Itheima888】
usermod 命令通过修改系统帐户文件来修改用户账户信息
修改用户账号就是根据实际情况更改用户的有关属性,如用户号、主目录、用户组、登录Shell等。
使用者权限:管理员用户
修改已有用户的信息使用 usermod 命令,其格式如下:
下面命令将用户czbk用户名修改成czbk2019
以下是usermod常用选项
假如我们其中一个用户的账号不再使用,可以从系统中删除。删除用户账号就是要将/etc/passwd等系统文件中的该用户记录删除,必要时还删除用户的主目录。
使用者权限:管理员用户
删除一个已有的用户账号使用 userdel 命令,其格式如下:
-f:强制删除用户,即使用户当前已登录;
-r:删除用户的同时,删除与用户相关的所有文件
此命令删除用户czbk2019
成功删除用户czbk2019
以下是userdel常用选项
引子:
为了方便用户管理, 提出了 组 的概念, 如下图所示
比如新建账户【张三】,那么它默认对应的组就是张三
一个用户可以有一个或者多个组
假如说(如上图),我们在企业级开发过程中,我们有多个组,其中一个开发组对应三个账户,张三、李四、王五、如果就像上面提到的,一个用户默认对应一个组,那么三个账户张三、李四、王五就有了三个不同的组,如果大家都操做一个文件,在进行权限分配的时候,就要对不同的三个组进行授权,显然这样是不合理的,因为太过繁琐。
所以,才有了组(新建组)的概念,我们把张三、李四、王五统一放到【开发组】,在对文件授权的时候,我们只对【开发组】进行授权由此,这样的话【张三、李四、王五】都有相等的权利操作了。
新增一个用户组(组名可见名知意,符合规范即可),然后将用户添加到组中
使用者权限:管理员用户
使用的选项有:
新增用户组czbk-it
上面的命令向系统中增加了一个新组czbk-it,新组的组标识号是在当前已有的最大组标识号的基础上加1
以下是groupadd常用选项
使用者权限:管理员用户
常用的选项有:
上面的命令将组czbk-it的组名修改为czbk-it-2019。
以下是groupmod常用选项
在查询用户所属的用户组前,我们先增加一个用户ituser-groups
要查询一个用户属于哪个用户组,使用groups命令,其格式如下
查询用户ituser-groups属于某个用户组,执行groups命令
由此可见,ituser-groups用户属于用户组ituser-groups(用户组默认与用户名一样)
使用者权限:管理员用户
要删除一个已有的用户组,使用groupdel命令,其格式如下
删除czbk-it-2019用户组
删除成功
以下是groupdel常用选项
1、创建一个新的组,并添加组ID(需要切换到root用户)
执行效果如下
2、创建3个用户(需要切换到root用户)
3、将上面三个用户添加到组itbj2020group
我们通过passwd命令将三个用户添加到组
什么是gpasswd:
gpasswd 是 Linux 下工作组文件 /etc/group 和 /etc/gshadow 管理工具,用于将一个用户添加到组或者从组中删除。
语法
将上面的三个用户使用gpasswd添加到组(需要切换到root用户)
执行如下
查看用户组下所有用户(所有用户)
执行效果如下(或者直接打开/etc/group文件都可以)
由上图可知:三个用户全部都加入到了itbj2020group组。
date 可以用来显示或设定系统的日期与时间
使用者权限:所有用户
语法如下:
参数
-d字符串:显示字符串所指的日期与时间。字符串前后必须加上双引号;
-s字符串:根据字符串来设置日期与时间。字符串前后必须加上双引号;
-u:显示GMT;
--help:在线帮助;
--version:显示版本信息
1、设置时间
用 -s选项可以设置系统时间,如下:
2、显示时间
协调世界时,又称世界统一时间、世界标准时间、国际协调时间。由于英文(CUT)和法文(TUC)的缩写不同,作为妥协,简称UTC。。
(2)GMT
即 格林尼治 平太阳时间,是指格林尼治所在地的标准时间,也是表示地球自转速率的一种形式
外文名: Universal Time
其他外文名 G.M.T.(Greenwich Mean Time)
(3)CST
北京时间 (中国国家标准时间) 北京时间是中国采用国际时区东八时区的区时作为标准时间 。 北京时间并不是北京(东经116.4°)的地方时间,而是东经120°的地方时间,故东经120度地方时比北京的地方时早约14分半钟。因为北京处于国际时区划分中的东八区,同格林尼治时间(世界时)整整相差8小时(即北京时间=世界时+8小时),故命名为“北京时间”。东八区包括的范围从东经112.5°到东经127.5°,以东经120°为中心线,东西各延伸7.5°,总宽度为15°的区域。 而中国幅员辽阔,东西相跨5个时区(即东五区、东六区、东七区、东八区、东九区5个时区)授时台必须建在地理中心地带,从而也就产生了长短波授。“北京时间”与“北京当地时间”是两个概念, “北京时间”的发播不在北京,而在陕西蒲城(处于东七区)
(4)东八区
东八区( UTC / GMT +08:00)是比 世界协调时间 (UTC)/ 格林尼治时间 (GMT)快8小时的时区,理论上的位置是位于 东经 112.5度至127.5度之间,是东盟标准的其中一个候选时区。当格林尼治标准时间为0:00时,东八区的标准时间为08:00
pre class="md-fences md-end-block ty-contain-cm modeLoaded" spellcheck="false" lang="" cid="n486" mdtype="fences" style="font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-indent: 0px; text-transform: none; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; text-decoration: none; box-sizing: border-box; overflow: visible; font-family: var(--monospace); font-size: 0.9em; display: block; break-inside: avoid; text-align: left; white-space: normal; background-image: inherit; background-size: inherit; background-attachment: inherit; background-origin: inherit; background-clip: inherit; background-color: rgb(248, 248, 248); border: 1px solid rgb(231, 234, 237); border-top-left-radius: 3px; border-top-right-radius: 3px; border-bottom-right-radius: 3px; border-bottom-left-radius: 3px; padding: 8px 4px 6px; margin-bottom: 15px; margin-top: 15px; width: inherit; caret-color: rgb(51, 51, 51); color: rgb(51, 51, 51); position: relative !important; background-position: inherit; background-repeat: inherit;"总结:
上面提到了很多知识:即UTC/GMT/CST/东八区
总结一下就是,北京时间(中国国家标准时间CST)采用东八区区时,即:
协调世界时(UTC)+8 / 格林尼治时间(GMT)+8
也就是说+8后的时间才是北京时间/pre
logname命令用于显示用户名称。
执行logname指令,它会显示目前用户的名称
语法为如下:
参数 :
显示登录账号的信息
su命令用于变更为其他使用者的身份,除 root 外,需要键入该使用者的密码。
使用权限:所有使用者。
语法如下:
变更帐号为 root 并在执行 ls 指令后退出返回原使用者
切换到root
这样的话,我们就进入到了root用户下。
id命令用于显示用户的ID,以及所属群组的ID。
id会显示用户以及所属群组的实际与有效ID。若两个ID相同,则仅显示实际ID。若仅指定用户名称,则显示目前用户的ID。
使用者权限:所有用户
语法
参数说明:
显示当前用户信息
执行效果如下
sudo:控制用户对系统命令的使用权限,root允许的操作。
通过sudo可以提高普通用户的操作权限
使用者权限:普通用户
语法如下:
sudo -V
sudo -h
sudo -l
sudo -v
sudo -k
sudo -s
sudo -H
sudo [ -b ] [ -p prompt ] [ -u username/#uid] -s
sudo command
参数说明 :
sudo命令使用
指定root用户执行指令
修改网卡配置文件
比如,在下面的例子中,我们使用普通用户修改网卡的配置文件,在进行保存的时候,提示我们【无法打开并写入文件】,那么此时,我们可以通过sudo命令来提升自己的写入权限
执行:
执行效果如下(保存)
然后点击回车
执行效果如下(键入itcast密码)
执行保存
top命令用于实时显示 process 的动态。
使用权限:所有使用者。
显示进程信息
执行效果如下
显示完整命令,与top命令不同的就是command属性像是进行了命令补全
执行效果如下
执行效果如下
Linux ps命令用于显示当前进程 (process) 的状态信息
使用者权限:所有用户
语法如下:
显示进程信息
显示指定用户信息
显示所有进程信息
Linux kill命令用于删除执行中的程序或工作(可强制中断)
使用者权限:所有用户
语法如下:
参数说明 :
杀死一个进程
强制杀死进程
彻底杀死进程
杀死指定用户所有进程
1.方法一 过滤出itcast用户进程
2.方法二,直接杀死
shutdown命令可以用来进行关闭系统,并且在关机以前传送讯息给所有使用者正在执行的程序,shutdown 也可以用来重开机
使用者权限:管理员用户
语法如下:
参数说明 :
立即关机
指定1分钟后关机,1分钟关机并显示警告信息
指定1分钟后重启,并发出警告信息
reboot命令用于用来重新启动计算机
使用者权限:管理员、普通(需要验证)用户
语法如下:
参数 :
开始重新启动
重启效果如下
who命令用于显示系统中有哪些使用者正在上面,显示的资料包含了使用者 ID、使用的终端机、从哪边连上来的、上线时间、呆滞时间、CPU 使用量、动作等等
使用者权限:所有使用者都可使用。
语法如下:
参数说明 :
显示当前登录系统的用户
显示明细(标题)信息
由上图可知,截止到现在只有itcast在线。
引子:
timedatectl是用于控制系统时间和日期。可以用来查询和更改系统时钟于设定,同时可以设定和修改时区信息。
在实际开发过程中,系统时间的显示会和实际出现不同步;我们一般为了校正服务器时间、时区的时候会使用timedatectl命令/pre
使用者权限:所有使用者都可使用,设置时间需要管理员,下面会标注。
几个常见的概念,进行总结如下:
显示系统的当前时间和日期,使用命令行中的timedatectl命令
执行效果如下
上图显示中国时区
Linux安装基本命令
Linux安装基本命令大全
Linux常用命令,你还能记得多少呢?下文是我为大家准备的Linux常用命令,一起来看看吧!
安装升级
查看软件xxx安装内容
dpkg -L xxx
查找软件库中的软件
apt-cache search 正则表达式
或
aptitude search 软件包
显示系统安装包的统计信息
apt-cache stats
显示系统全部可用包的名称
apt-cache pkgnames
显示包的信息
apt-cache show k3b
查找文件属于哪个包
dpkg -S filename
apt-file search filename
查看已经安装了哪些包
dpkg -l
也可用
dpkg -l | less
翻页查看
查询软件xxx依赖哪些包
apt-cache depends xxx
查询软件xxx被哪些包依赖
apt-cache rdepends xxx
增加一个光盘源
sudo apt-cdrom add
系统更新
sudo apt-get update (这一步更新包列表)
sudo apt-get dist-upgrade (这一步安装所有可用更新)
或者
sudo apt-get upgrade (这一步安装应用程序更新,不安装新内核等)
清除所有已删除包的残馀配置文件
dpkg -l |grep ^rc|awk '{print $2}' |sudo xargs dpkg -P
如果报如下错误,证明你的系统中没有残留配置文件了,无须担心。
----------------------------------------------------------
dpkg: --purge needs at least one package name argument
Type dpkg --help for help about installing and deinstalling packages [*];
Use `dselect' or `aptitude' for user-friendly package management;
Type dpkg -Dhelp for a list of dpkg debug flag values;
Type dpkg --force-help for a list of forcing options;
Type dpkg-deb --help for help about manipulating *.deb files;
Type dpkg --license for copyright license and lack of warranty (GNU GPL) [*].
Options marked [*] produce a lot of output - pipe it through `less' or `more' !
----------------------------------------------------------
编译时缺少h文件的自动处理
sudo auto-apt run ./configure
查看安装软件时下载包的临时存放目录
ls /var/cache/apt/archives
备份当前系统安装的所有包的列表
dpkg --get-selections | grep -v deinstall ~/somefile
从上面备份的安装包的列表文件恢复所有包
dpkg --set-selections ~/somefile
sudo dselect
清理旧版本的软件缓存
sudo apt-get autoclean
清理所有软件缓存
sudo apt-get clean
删除系统不再使用的孤立软件
sudo apt-get autoremove
如果使用
sudo apt-get autoremove --purge
的话会把这些孤立软件的残留配置文件也一并移除
查看包在服务器上面的地址
apt-get -qq --print-uris download 软件包名称 | cut -d\' -f2
彻底删除Gnome
sudo apt-get --purge remove liborbit2
彻底删除KDE
sudo apt-get --purge remove libqt3-mt libqtcore4
一键安装 LAMP 服务
sudo tasksel install lamp-server
删除旧内核
sudo aptitude purge ~ilinux-image-.*\(\!\(`uname -r`\|generic-.*\)\)
导入ppa源的'key值
#W: GPG签名验证错误: jaunty Release: 由于没有公钥,下列签名无法进行验证: NO_PUBKEY 5126890CDCC7AFE0
sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 5126890CDCC7AFE0 #5126890CDCC7AFE0替换为你需要导入的Key值
增加 add-apt-repository 命令
sudo apt-get install software-properties-common
增加一个ppa源
sudo add-apt-repository ppa:user/ppa-name
#使用 ppa 的地址替换 ppa:user/ppa-name
添加163镜像源
sudo add-apt-repository "deb `lsb_release -cs` main restricted universe multiverse"
sudo add-apt-repository "deb `lsb_release -cs`-updates main restricted universe multiverse"
sudo add-apt-repository "deb `lsb_release -cs`-security main restricted universe multiverse"
系统升级
1 这里指的是版本间的升级,例如 9.04=10.04。
2 使用该升级方式通常需要使用 backports 源。
sudo apt-get update
sudo apt-get install update-manager-core
sudo do-release-upgrade
系统
查看内核
uname -a
查看系统是32位还是64位
#查看long的位数,返回32或64
getconf LONG_BIT
#查看文件信息,包含32-bit就是32位,包含64-bit就是64位
file /sbin/init
或者使用
uname -m
查看Ubuntu版本
lsb_release -a
或 cat /etc/lsb-release
查看内核加载的模块
lsmod
查看PCI设备
lspci
查看USB设备
lsusb
#加参数 -v 可以显示USB设备的描述表(descriptors)
lsusb -v
查看网卡状态
sudo apt-get install ethtool
sudo ethtool eth0
激活网卡的 Wake-on-LAN
sudo apt-get install wakeonlan
或 sudo ethtool -s eth0 wol g
查看CPU信息
cat /proc/cpuinfo
显示当前硬件信息
sudo lshw
查看内存型号
sudo dmidecode -t memory
获取CPU序列号或者主板序列号
#CPU ID
sudo dmidecode -t 4 | grep ID
#Serial Number
sudo dmidecode | grep Serial
#CPU
sudo dmidecode -t 4
#BIOS
sudo dmidecode -t 0
#主板:
sudo dmidecode -t 2
#OEM:
sudo dmidecode -t 11
显示当前内存大小
free -m |grep "Mem" | awk '{print $2}'
查看硬盘温度
sudo apt-get install hddtemp
sudo hddtemp /dev/sda
显示系统运行时间
uptime
查看系统限制
ulimit -a
查看内核限制
ipcs -l
查看当前屏幕分辨率
xrandr
硬盘
查看块设备
lsblk
查看硬盘的分区
sudo fdisk -l
硬盘分区
#危险!小心操作。
sudo fdisk /dev/sda
硬盘格式化
#危险!将第一个分区格式化为 ext3 分区, mkfs.reiserfs mkfs.xfs mkfs.vfat
sudo mkfs.ext3 /dev/sda1
硬盘检查
#危险!检查第一个分区,请不要检查已经挂载的分区,否则容易丢失和损坏数据
sudo fsck /dev/sda1
硬盘坏道检测
sudo badblocks -s -v -c 32 /dev/sdb
#得到坏的块后,使用分区工具隔离坏道。
分区挂载
sudo mount -t 文件系统类型 设备路经 访问路经
#常用文件类型如下: iso9660 光驱文件系统, vfat fat/fat32分区, ntfs ntfs分区, smbfs windows网络共享目录, reiserfs、ext3、xfs Linux分区
#如果中文名无法显示尝试在最後增加 -o nls=utf8 或 -o iocharset=utf8
#如果需要挂载後,普通用户也可以使用,在 -o 的参数後面增加 ,umask=022 如:-o nls=utf8,umask=022
分区卸载
sudo umount 目录名或设备名
只读挂载ntfs分区
sudo mount -t ntfs -o nls=utf8,umask=0 /dev/sdb1 /mnt/c
可写挂载ntfs分区
sudo mount -t ntfs-3g -o locale=zh_CN.utf8,umask=0 /dev/sdb1 /mnt/c
挂载fat32分区
sudo mount -t vfat -o iocharset=utf8,umask=0 /dev/sda1 /mnt/c
挂载共享文件
sudo mount -t smbfs -o username=xxx,password=xxx,iocharset=utf8 //192.168.1.1/share /mnt/share
挂载ISO文件
sudo mount -t iso9660 -o loop,utf8 xxx.iso /mnt/iso
查看IDE硬盘信息
sudo hdparm -i /dev/sda
查看软raid阵列信息
cat /proc/mdstat
参看硬raid阵列信息
dmesg |grep -i raid
cat /proc/scsi/scsi
查看SATA硬盘信息
sudo hdparm -I /dev/sda
或
sudo apt-get install blktool
sudo blktool /dev/sda id
查看硬盘剩余空间
df
df --help 显示帮助
查看目录占用空间
du -hs 目录名
闪盘没法卸载
sync
fuser -km /media/闪盘卷标
使用文件来增加交换空间
#创建一个512M的交换文件 /swapfile
sudo dd if=/dev/zero of=/swapfile bs=1M count=512
sudo mkswap /swapfile
sudo swapon /swapfile
#sudo vim /etc/fstab #加到fstab文件中让系统引导时自动启动
/swapfile swap swap defaults 0 0
查看硬盘当前读写情况
# 首先安装 sysstat 包
sudo apt-get install sysstat
#每2秒刷新一次
sudo iostat -x 2
测试硬盘的实际写入速度
dd if=/dev/zero of=test bs=64k count=512 oflag=dsync
进程
查看当前的内存使用情况
free
连续监视内存使用情况
watch -d free
# 使用 Ctrl + c 退出
动态显示进程执行情况
top
top指令运行时输入H或?打开帮助窗口,输入Q退出指令。
查看当前有哪些进程
ps -AFL
查看进程的启动时间
ps -A -opid,stime,etime,args
查看目前登入用户运行的程序
w
查看当前用户程序实际内存占用,并排序
ps -u $USER -o pid,rss,cmd --sort -rss
统计程序的内存耗用
ps -eo fname,rss|awk '{arr[$1]+=$2} END {for (i in arr) {print i,arr[i]}}'|sort -k2 -nr
按内存从大到小排列进程
ps -eo "%C : %p : %z : %a"|sort -k5 -nr
列出前十个最耗内存的进程
ps aux | sort -nk +4 | tail
按cpu利用率从大到小排列进程
ps -eo "%C : %p : %z : %a"|sort -nr
ps aux --sort -pcpu |head -n 20
查看当前进程树
pstree
中止一个进程
kill 进程号(就是ps -A中的第一列的数字)
或者 killall 进程名
强制中止一个进程(在上面进程中止不成功的时候使用)
kill -9 进程号
或者 killall -9 进程名
图形方式中止一个程序
xkill 出现骷髅标志的鼠标,点击需要中止的程序即可
查看进程打开的文件
lsof -p 进程的pid
显示开启文件abc.txt的进程
lsof abc.txt
显示22端口现在运行什么程序
lsof -i :22
显示nsd进程现在打开的文件
lsof -c nsd
在後台运行程序,退出登录後,并不结束程序
nohup 程序
#查看中间运行情况 tail nohup
在后台运行交互式程序,退出登录后,并不结束程序
sudo apt-get install screen
screen vim a.txt
#直接退出后使用
screen -ls # 2208pxs-0.ubuntu (Detached)
screen -r 1656 #恢复
#热键,同时按下Ctrl和a键结束后,再按下功能键
C-a ? #显示所有键绑定信息
C-a w #显示所有窗口列表
C-a C-a #切换到之前显示的窗口
C-a c #创建一个新的运行shell的窗口并切换到该窗口
C-a n #切换到下一个窗口
C-a p #切换到前一个窗口(与C-a n相对)
C-a 0..9 #切换到窗口0..9
C-a a #发送 C-a到当前窗口
C-a d #暂时断开screen会话
C-a k #杀掉当前窗口
在后台运行交互式程序,退出登录后,并不结束程序
tmux 进入后再运行其它命令
tmux attach #恢复
#热键,同时按下Ctrl和b键结束后,再按下功能键
C-b c #创建一个新的运行shell的窗口并切换到该窗口
C-b n #切换到下一个窗口
C-b p #切换到前一个窗口(与C-a n相对)
C-b 0..9 #切换到窗口0..9
C-b d #暂时断开会话
C-b #杀掉当前窗口
详细显示程序的运行信息
strace -f -F -o outfile
增加系统最大打开文件个数
#ulimit -SHn
sudo vim /etc/security/limits.conf
文件尾追加
* hard nofile 4096
* soft nofile 4096
sudo vim /etc/pam.d/su
将 pam_limits.so 这一行注释去掉
重起系统
清除僵尸进程
ps -eal | awk '{ if ($2 == "Z") {print $4}}' | xargs sudo kill -9
将大于120M内存的php-cgi都杀掉
ps -eo pid,fname,rss|grep php-cgi|grep -v grep|awk '{if($3=120000) print $1}' | xargs sudo kill -9
Linux系统中如何限制用户进程CPU占用率
renice +10 `ps aux | awk '{ if ($3 0.8 id -u $1 500) print $2}'`
#或直接编辑/etc/security/limits.conf文件。 ;
当前题目:包含linux命令it的词条
当前网址:http://lswzjz.com/article/hecpgd.html