【Linux】基础——常用命令
一说到命令行,我们真正指的是 shell。shell 就是一个程序,它接受从键盘输入的命令,然后把命令传递给操作系统去执行。几乎所有的 Linux 发行版都提供一个名为 bash 的来自 GNU 项目的 shell 程序。“bash”是“Bourne Again SHell”的首字母缩写,所指的是这样一个事实, bash 是最初 Unix 上由 Steve Bourne 写成 shell 程序 s
一、shell
一说到命令行,我们真正指的是 shell。shell 就是一个程序,它接受从键盘输入的命令,然后把命令传递给操作系统去执行。
作用:1.保护内核 2.命令解释器
几乎所有的 Linux 发行版都提供一个名为 bash 的来自 GNU 项目的 shell 程序。
“bash”是“Bourne Again SHell”的首字母缩写,所指的是这样一个事实, bash 是最初 Unix 上由 Steve Bourne 写成 shell 程序 sh 的增强版。
二、终端仿真器
当使用图形用户界面时,我们需要另一个和 shell 交互的叫做终端仿真器的程序。
如果我们浏览 一下桌面菜单,可能会找到一个。虽然在菜单里它可能都被简单地称为“terminal”,但是 KDE 用的是 konsole , 而 GNOME 则使用 gnome-terminal。
还有其他一些终端仿真器可供 Linux 使用,但基本上,它们都完成同样的事情,让我们能访问 shell。也许,你可能会因为附加的一系列花俏功能而喜欢上某个终端。
启动终端仿真器!一旦它运行起来,我们应该看到一行像这样的文字:
[me@linuxbox ~]$
这叫做 shell 提示符,无论何时当 shell 准备好了去接受输入时,它就会出现。然而,它可 能会以各种各样的面孔显示,这则取决于不同的 Linux 发行版,它通常包括你的用户名 @ 主机 名,紧接着当前工作目录(稍后会有更多介绍)和一个美元符号。
如果提示符的最后一个字符是“#”, 而不是“$”, 那么这个终端会话就有超级用户权限。 这意味着,我们或者是以 root 用户的身份登录,或者是我们选择的终端仿真器提供超级用户 (管理员)权限
三、命令
文件系统类
ls 查看文件/目录
显示当前目录中的文件与目录(不包含隐藏文件)。
ls -a 可以显示隐藏文件。
ls -l 显示详细信息。
ls -al 包含-a和-l的功能。
附加知识
qq@ubuntu:~$ ls -l
total 36
drwxr-xr-x 2 qq qq 4096 Aug 17 23:34 Desktopd:文件类型 目录
r: 是否有读权限 w 写权限 x 执行权限
第一组rwx:创建文件的用户对文件是否有读写执行权限
第二组rwx:创建文件用户同组用户对文件是否有读写执行权限
第三组rwx:其余人对文件是否有读写执行权限
2:硬链接个数(与磁盘的链接(存储)个数)
创建文件的用户名
创建文件的用户所在的组名
文件的大小
文件最后修改时间
文件名
pwd 查看当前路径
显示当前工作目录的绝对路径。
cd 改变工作目录
cd xxx
cd /home 进入home目录。
cd - 回退到上一次的目录。
cd .. 回到上一级。
cd ../.. 连退两级。
file 确定文件类型
file filename
当调用 file 命令后,file 命令会打印出文件内容的简单描述。例如:
[me@linuxbox ~]$ file picture.jpg
picture.jpg: JPEG image data, JFIF standard 1.01
less 对文件分页浏览
less 命令是一个用来浏览文本文件的程序
less filename
一旦运行起来,less 程序允许你前后滚动文件。例如,要查看一个定义了系统中全部用户身 份的文件,输入以下命令:
[me@linuxbox ~]$ less /etc/passwd
一旦 less 程序运行起来,我们就能浏览文件内容了。
more 对文件内容分页浏览
空格-向上翻页
回车-向下按行滚定
到达末尾自动退出
q-退出显示
head 显示文件的前n行内容(默认10行)
head -n 3 txt 显示前三行
tail 显示文件的末尾n行内容(默认10行)
tail -n 3 txt 显示末尾三行
touch 新建文件
touch xxxfile新建xxxfile文件。
mkdir 新建目录
mkdir xxxdir新建xxxdir目录
mkdir /home/workdir 在/home目录下创建workdir目录。
mkdir -p /home/workdir/dir1/dir2 连续创建,若中间目录不存在则强制创建。
rmdir 删除目录
rmdir xxxdir 删除xxxdir目录
只能删除空文件夹
du 查看文件大小
du
du /bin 查看bin目录大小。
du -k 文件名 以kb为自己显示大小
lei@ubuntu:~/Desktop$ du c 64 c lei@ubuntu:~/Desktop$ du -b c 16815 c lei@ubuntu:~/Desktop$ du -k c 64 c lei@ubuntu:~/Desktop$ du -m c 1 c lei@ubuntu:~/Desktop$ du -k c/* 12 c/a.out 4 c/coustpoint.c 4 c/da大小端1.c 4 c/da大小端.c 4 c/define.c 4 c/enum.c 4 c/hannuota.c 4 c/malloc.c 4 c/pointarray.c 4 c/strlen.c 4 c/twoarray.c 4 c/twopoint.c 4 c/union.c
cp 复制文件
cp xxx xxx
cp /home/test /tmp/ 将/home文件夹下的test文件复制到/tmp目录下。
cp -r /home/dir1 /tmp/ 将/home文件夹下的dir1文件夹复制到/tmp目录下。
![]()
mv 移动或重命名文件
mv xxx xxx
mv /home/test /home/test1 将/home目录下的test文件更名为test1。
mv /home/dir1 /tmp/ 将/home目录下的dir1文件夹复制到/tmp文件夹下。
rm 删除文件/目录(默认删除文件)
rm xxx
rm /home/test 删除/home目录下的test文件。
rm -r /home/dir1 删除/home目录下的dir1目录。
rm -f txt 强制删除当前目录下的txt文件。
chmod 修改文件权限
chmod 777 filechmod g+w hello.c 用户组内对hello.c文件添加写权限。
u(user), g(group), o(other), a(all)。
+(增加某个权限),-(去除某个权限),=(赋予给定的权限)。
r(read), w(write), x(execute)。
粘滞位(粘着位)
只针对其他用户,不能删除别人的文件
chmod +t filename
如果对一个目录设置了粘着位,只有对该目录具有写的用户并且满足下列条件之一,才能删除或重命名该目录下的文件:
- 拥有此文件
- 拥有此目录
- 是超级用户
umask 查看或设置文件的创建权限掩码
掩码影响了文件创建出来后的默认权限,默认权限是掩码取反
touch 默认给定权限666
umask默认002
则~002 & 666 = 664
ln 创建链接
ln file link 创建硬链接
ln -s item link 创建符号链接,“item” 可以是一个文件或是一个目录
硬链接有两个重要局限性:
1. 一个硬链接不能关联它所在文件系统之外的文件。这是说一个链接不能关联与链接本身 不在同一个磁盘分区上的文件。
2. 一个硬链接不能关联一个目录。 一个硬链接和文件本身没有什么区别。不像符号链接,当你列出一个包含硬链接的目录内容时,你会看到没有特殊的链接指示说明。当一个硬链接被删除时,这个链接被删除,但是文件本身的内容仍然存在(这是说,它所占的磁盘空间不会被重新分配),直到所有关联这个文件的链接都删除掉。
(软链接)创建符号链接是为了克服硬链接的局限性。符号链接生效,是通过创建一个特殊类型的文件, 这个文件包含一个关联文件或目录的文本指针。在这一方面,它们和 Windows 的快捷方式差不多,当然,符号链接早于 Windows 的快捷方式很多年;
一个符号链接指向一个文件,而且这个符号链接本身与其它的符号链接几乎没有区别。例如,如果你往一个符号链接里面写入东西,那么相关联的文件也被写入。然而,当你删除一个符号链接时,只有这个链接被删除,而不是文件自身。如果先于符号链接删除文件,这个链接 仍然存在,但是不指向任何东西。在这种情况下,这个链接被称为坏链接。在许多实现中,ls 命令会以不同的颜色展示坏链接,比如说红色,来显示它们的存在。
用户管理类
useradd 添加用户
-
useradd -m xxx
添加xxx用户,在/home目录下会生成与用户名同名的目录。 在etc/passwd的最后一行会有新添加的信息。 切换用户后若命令行的开头只显示$符号,将passwd中的/bin/sh改为/bin/bash。
-
who 查看当前登陆的所有用户。
-
whoami 查看自己账户名称。
userdel 删除用户
user -r xxx
删除xxx用户,-r参数会使/home目录下该用户的目录也一并删除,不加-r则只删除用户登录。
passwd 修改密码
passwd xxx
修改xxx用户的密码,需要sudo权限。
su 切换用户
su xxx
切换到xxx用户,并将xxx用户的环境变量同时带入。
-
使用exit可返回切换。
-
切换到超级管理员(root)需使用sudo -s命令。
-
注意命令行中root后符号为#,普通用户为$。
-
sudo 不是一个单独指令,给普通用户临时提权
sudo 的前提条件:使用户需要被添加到sudoers配置文件中
添加用户组
-
groupadd xxx
xxx为用户组名。
删除用户组
-
groupdel xxx
tar压缩打包类
压缩,解压缩三种
zip/unzip
gzip/gunzip
bzip2/zunzip2
tar打包指令,对大量文件进行打包同时可以指定某种压缩算法进行压缩,解包一样。
参数 功能
-c 创建新的归档文件(打包)
-x 从归档文件中提取文件(解包)
-f <文件名> 指定归档文件名 (-f一定放在最后)
-v 显示操作的详细信息
-z 通过gzip压缩归档文件
-j 通过bzip2压缩归档文件
-C <目录> 切换到指定目录
--exclude=<模式> 排除匹配模式的文件
--list 列出归档文件的内容
--help 显示帮助信息压缩:
tar -zcvf 文件名.tar.gz 文件夹/*
tar -jcvf 文件名.tar.bz2 文件夹/*
解压缩:
tar -zxvf 文件夹.tar.gz
tar -jxvf 文件夹.tar.bz2
tar -xvf archive.tar.xz
命令帮助类
type 显示命令的类型
type 命令是 shell 内部命令,它会显示命令的类别,给出一个特定的命令名(做为参数)。
补充命令可以是下面四种形式之一:
1. 是一个可执行程序,就像我们所看到的位于目录/usr/bin 中的文件一样。这一类程序可 以是用诸如 C 和 C++ 语言写成的程序编译的二进制文件, 也可以是由诸如 shell,perl, python,ruby 等等脚本语言写成的程序。(cp)
2. 是一个内建于 shell 自身的命令。bash 支持若干命令,内部叫做 shell 内部命令 (builtins)。 例如,cd 命令,就是一个 shell 内部命令。(cd)
3. 是一个 shell 函数。这些是小规模的 shell 脚本,它们混合到环境变量中。在后续的章节 里,我们将讨论配置环境变量以及书写 shell 函数。但是现在,仅仅意识到它们的存在就可以了。
4. 是一个命令别名。我们可以定义自己的命令,建立在其它命令之上。 (ls)
which 显示一个可执行程序的位置
为了确定所给定的执行程序的准确位置,使用 which 命令:
这个命令只对可执行程序有效,不包括内建命令和命令别名,别名是真正的可执行程序的替 代物。当我们试着使用 shell 内建命令时,例如,cd 命令,我们或者得不到回应,或者是个错误信息
man 显示程序手册页
手册文档通常并不包含实例,它打算作为一本参考手册, 而不是教程。作为一个例子,浏览一下 ls 命令的手册文档:
[me@linuxbox ~]$ man ls
find 查找文件/目录
-size 通过文件大小查找
-time -ctime -atime 通过时间查找
find xxxdir -name xxxfile
find /root/ -name install.log 在root目录下查找名为install.log的文件。
cat 查看文件内容
cat file.txt
echo 打印字符串
echo hello world
grep 查找字符串
grep -r "xxxstr"
grep 'string' filename
-i 忽略大小写
-R 针对指定目录下所有文件进行内容匹配
grep -r "hello" ./ 在当前路径下寻找包含"hello"字符串的文件。
man 查看帮助
man xxx
查看xxx命令的帮助信息。
通配符 搭配shell命令使用,操作多个文件
*:匹配任意长度、任意字符的文件名
ls file*.txt
?: 匹配一位
进程管理类
查看进程
-
ps
-
ps 查看当前进程。
-
ps -aux 查看所有进程。
结束进程
-
kill idxxx
结束某个id号进程。
查看内存
-
free
查看CPU占用
-
top
-
q键可退出查看。
磁盘管理类
查看磁盘
-
df
-
df -hl 可查看带具体单位的信息。
文件链接
类似于“快捷方式”,分为硬链接与软链接。
-
ln xxxfile1 xxxfile2
-
ln oldfie1 hlinkfile1 为oldfie1文件创建一个硬链接文件hlinkfile1(原文件删除后文件还在)。
-
ln -s oldfie1 slinkfile1 为oldfie1文件创建一个软链接文件slinkfile1(与原文件共存亡)。
关机类
注销
-
exit
重启
-
reboot
关机
-
shutdown now -P 立刻关机并关闭电源。
更多推荐










所有评论(0)