Linux基础
ls命令:
ls命令 : 用于显示指定工作目录下内容
ls [-ahlt] [fnamepath]
-a 显示所有文件及目录包括隐藏文件(ls内定将文件名或目录名称开头为"."的视为隐藏档,不会列出)
-l 会详细的列出文件型态、权限、拥有者、文件大小等
-h 以人性化的详细列出文件型态、权限、拥有者、文件大小等
-t 将文件依建立时间之先后次序列出
通配符:
* 任意字符(0个或多个)
? 任意1个字符
[abc] 匹配abc中任意一个字符
[a-z] 表示范围的意思 []匹配中括号中任意一个字符
[!abc] 表示不匹配里面任何一个字符
cd命令:
cd命令 : 用于切换当前工作目录
cd [dirName]
dirName 要切换的路径
"~" 也表示为 home 目录
"." 则是表示目前所在的目录
".." 则表示目前目录位置的上一层目录
touch命令:
touch命令 : 用于修改文件或者目录的时间属性,若文件不存在会建立一个新的文件
touch [fname]
mkdir命令:
mkdir命令 : 用于建立子目录(文件夹)
mkdir [-p] dirName
-p 确保目录名称存在,不存在就新建一个
rm命令:
rm命令 : 删除一个文件或者目录
rm [options] name
-r 将目录及一下文档全部删除
-f 即时原档案属性为只读,也可以直接删除
-i 删除前询问
tree命令:
tree命令 : 用于树状图累不目录内容
tree [-aCd] [目录]
-a 显示所有文件和目录
-C 在文件和目录清单加上色彩
-d 显示目录名称而非内容
cp命令:
cp命令 : 主要用于复制文件或目录
cp [options] source dest
-r : 若给出的源文件是一个文件夹,次数复制该目录下所有的子目录和文件
-f : 覆盖已存在的目标文件不给出提示
-i : 覆盖目标文件给出提示,要求用户确认是否覆盖
mv命令:
mv命令 : 移动文件或者文件夹
mv [options] source dest
-i : 若指定目录已有同名文件,则选询问是否覆盖旧文件
-f : 不给提示
cat命令:
cat命令 : 查看文件内容
cat -[nb] fileName
-n : 对所有输出的行数编号
-b : 和-n相似但是空白行不编号
more命令:
more命令 : 类似于cat命令,会一页一页的显示,方便阅读
more [-s] [+linenum] [fileName]
+num : 从第num行开始显示
-s : 当遇到连续两行以上的空白行,就替换为一行的空白行
使用more命令查看文件中
空格键:往下一行显示
b键 :返回一页显示
f键 :向前一页显示
grep命令:
grep命令 : 用于查找文件里符合条件的字符串
grep [-inv] '搜寻字符串' filename
-i : 忽略大小写
-n : 输出行号
-v : 反向输出
echo命令:
echo命令:用于字符串的输出
echo string
重定向:
echo "hello world" >> ./test.txt
> 输出重定向到一个文件或设备 覆盖原来的文件
>> 输出重定向到一个文件或设备 追加原来的文件
管道:
管道是一种通信机制,通常用于进程间的通信,它表现出来的形式将前面每一个进程的输出直接作为下一个进程的输入
管道命令使用 | 作为界定符号
ifconfig | grep "inet"
shutdown命令:
shutdown命令可以用来进行关机,重启
shutdown [-r] time
-r : 重启
time 多少分钟后进行关机或重启操作
ifconfig命令:
ifconfig命令:用于显示或者设置网络设备
ping命令:
ping命令:用于检测主机
ping -c 2 主机地址
需要手动终止Ctrl+C
-c 设置完成要求回应的次数。
ssh登录命令:
SSH是一种协议,用于计算机之间的加密登录
ssh [-p port] [user@]hostname
ssh免密登录
1.使用 ssh-keygen -t rsa 命令在主机A生成公钥秘钥
生成id_rsa和id_rsa.pub文件在~/.ssh目录中
2.使用ssh-copy-id 命令把公钥放到主机B中
ssh-copy-id [-i [identity_file]] [user@]machine
使用ssh config配置文件来管理ssh连接
配置前:
ssh [-p] username@hostname
配置后:
ssh 别名
配置方法:
在.ssh/config中配置,如果没有config,创建一个
Host 别名
Hostname 主机名
Port 端口
User 用户名
spc命令:
spc命令:用于远程拷贝文件和命令
spc [-r] [-P]port [原路径] [[user@]host:]file
注意:目标路径后面一定要加 ":"
-r: 递归复制整个目录。
-P:指定端口
chmod命令:
chmod命令:更改文件的权限
chmod命令有两种用法
(一)包含字母和操作符表达式的文字设定法
chmod [-R] [ugoa...][[+-=][rwxX]...] [fileName]
-R : 对目前目录下的所有文件与子目录进行相同的权限变更
u表示文件的拥有这,g表示组,o表示其他意外的人,a表示三者皆是
r 表示可读取,w 表示可写入,x 表示可执行,X 表示只有当该文件是个子目录或者该文件已经被设定过为可执行。
(二)数字设定法
chmod [mode] 文件名
r=4,w=2,x=1
chown命令:
chown命令:将文件的拥有改为指定的用户或组
chown [-R] user[:group] file
-R : 处理指定目录以及其子目录下的所有文件
user : 文件拥有者的使用id
group : 拥有者使用的群组
chgrp命令:
chgrp命令:直接修改文件或文件夹所属的群组
chgrp [-R] [group] [file]
-R : 处理指定目录以及其子目录下的所有文件
组概念和用法:
创建新组:
groupadd 选项 用户组
-g GID指定新用户的组标识别号
删除组:
groupdel 用户组
修改用户组的属性:
groupmod 选项 用户组
-n 新用户组 将用户组的名字改为新名字
用户概念和用法:
添加新的用户:
useradd 选项 用户名
-m 表示在/home目录下面会创建一个子目录,目录名与用户名相同
-g 用户组 指定用户所属的用户组。
-G 用户组,用户组 指定用户所属的附加组。
-s Shell文件 指定用户的登录Shell。
设置用户新密码:
passwd 用户名
修改用户:
usermod 选项 命令
-l 新用户名
常用选项与useradd命令中的选项一样
删除用户:
userdel -r 用户名
-r 既删除用户,又删除/home/用户名目录
与用户账号有关的系统文件
/etc/passwd文件是用户管理工作涉及的最重要的一个文件
/etc/group 存放的用户组的所有信息
who命令:
who命令 : 用于显示谁登录了系统
who
whoami命令 :
whoami命令 : 用于显示自身用户名称
whoami
which命令 :
which命令:用于查找文件
which [文件]
su命令 :
su命令 : 用于变更为其他使用者的身份
su - [user]
date命令 :
date命令:可以用来显示系统日期与时间
date
cal命令 :
cal命令 : 用于显示日历
cal -y
-y 显示年日历
df命令 :
df命令 : 用于显示目前在linux系统上文件系统的磁盘使用情况
df
du命令 :
du命令 : 用于显示目录或文件的大小
du [-h] [目录或文件]
-h : 提高可读性
ps命令:
ps命令 : 用于显示当前进程状态
ps
top命令 :
top命令 : 用于实时显示进程动态
top
kill命令 :
kill命令 : 用于删除执行中的程序或工作
kill [PID]
find命令 :
find命令 : 用来在指定目录下查找文件
find pathname -options [-print -exec -ok...]
-name filename #查找名为filename的文件
-perm #按执行权限来查找
-user username #按文件属主来查找
-group groupname #按组来查找
-mtime -n +n #按文件更改时间来查找文件,-n指n天以内,+n指n天以前
软连接和硬链接 :
ln [-s] [源目标] [链接名字]
硬链接:
相当于一个指针,指向文件索引节点,系统并不为它重新分配内存
软链接:
软链接又叫符号链接,这个文件包含了另一个文件的路径名。可以是任意文件或目录,可以链接不同文件系统的文件。和win下的快捷方式差不多。
-s 务必不能少
软链接的源文件必须写绝对路径
tar命令:
tar命令 : 用于备份文件
tar命令格式如下:
打包:
tar -cvf 打包文件.tar 被打包文件/路径
解包:
tar -xvf 打包文件.tar
-c 生成文档文件,创建打包文件
-x 从档案文件中释放文件。
-v 详细报告tar处理的文件信息。如无此选项,tar不报告文件信息。
-f 指定档案文件名或设备名,这个选项通常是必选的。必须放在最后
gzip压缩和解压:
tar与gzip命令结合可以使用实现文件打包和压缩
tar只负责打包文件,不负责压缩
用gizp压缩tar打包后的文件,扩展名一般用XXX.tar.gz
在linux 中,命令中有个一选项-z 可以调用gizp
压缩文件:
tar -zcvf 打包文件.tar.gz 被压缩的文件/路径
解压缩:
tar -zxvf 打包文件.tar.gz
bzip2压缩和解压:
tar与bzip2命令结合可以使用实现文件打包和压缩
tar只负责打包文件,不负责压缩
用bzip2压缩tar打包后的文件,扩展名一般用XXX.tar.bz2
在linux 中,命令中有个一选项-j 可以调用bzip2
压缩文件:
tar -jcvf 打包文件.tar.bz2被压缩的文件/路径
解压缩:
tar -jxvf 打包文件.tar.bz2