linux下的命令整理

来源:互联网 发布:聪明的一休 知乎 编辑:程序博客网 时间:2024/05/16 02:22

ls -a:显示 文件和隐藏文件
ls -R:从当前目录开始递归子目录显示内容
ls -s:以4k为最小单位显示文件大小
ls -sh:以某种单位显示文件大小
ls -l:详细信息,如下
ls -R -sh -i(inode节点)
详细信息如下:
d rwx r-x r– linux linux 4096 4月18 15:55 work
从左到右的含义如下:
用户名:文件所有者(u)
用户组:所有者所在用户组(g)
其他用户:非同组之外的用户(o)
d:文件的类型,d是目录,-是普通文件
r:读 w:写 x:执行
第一组rwx:代表的是文件所有者对文件的操作权限(u)
第二组rwx:代表的是文件所有者所在组队文件的操作权限(g)
第三组rwx:代表的是其他用户的操作权限(o)
r w x三者的顺序不能改变,如果说对应的权限没有,用-代替
linux:用户名 文件的所有者
linux:用户组名 文件的所有者属于的组
4096:文件所在空间的大小
4 月18 15:55 :文件最后一次修改的时间(时间戳)
work:文件的名字

chmod (change mode):改变文件权限
chmod g+w work加权限
chmod u-x work 减权限
chmod u/g/o +/- r/w/x/ + 文件的名字
chmod 777 + 文件的名字

cd:切换目录
cd + 路径名
绝对路径:从/(根目录)开始
pwd:查看系统的绝对路径
相对路径:相对于其他路径而言
cd :切换家目录
cd /:切换到根目录
cd ..:切换到上一级目录
.. :上一级目录的别名 . :当前目录的别名

mkdir:创建目录/文件夹
mkdir + 名字

touch 创建普通文件

rm :删除
rm + 名字 :删除普通文件,名字可以是多个名字,每个名字以空格隔开
rm -rf + 目录名 :删除目录
rm -rf * :*代表所有的
比如说如果要删除所有的.c文件,则可以使用rm *.c

rmdir :删除目录(只能删除单个目录)
举例:mkdir -p 1/2/3
rm -rf 1 (删除了1、2、3)
mkdir 1/2/3(只删除了3)

cp:复制,拷贝
cp + 路径1/文件名1 + 路径2/文件名2 :(普通文件)把路径1下面的文件1拷贝到 文件2下并且重命名为文件2
cp -a + 路径1+路径2(不会保留依赖关系)
cp -r + 路径1+路径2(会保留依赖关系):拷贝目录或者文件夹(两者在功能上没区别)

mv:移动
mv + 路径1/文件名1 + 路径2/文件名

cat /etc/issue查看ubuntu版本
cat /proc/version 查看linux内核版本

重启服务
sudo service 服务名 restart

dpkg:
安装:sudo dpkg -i 软件包
dpkg安装的缺点:不支持在线安装,并且需要人为考虑软件依赖关系
不完全卸载:sudo dpkg -r 软件包名
完全卸载:sudo dpkg -p 软件包名
注:cannot open display 因为窗口原因无法打开该软件

apt:
特点:支持在线安装,apt会自动检查依赖关系
/var/lib/apt/lists/ 目录中存放都是索引文件,索引文件帮助用户查找适合当前系统使用的网址
/etc/apt/sources.list 这个文件存放的是网址
/var/cache /apt/archives/ 软件包下载默认的存放路径
安装:sudo apt-get install 软件包名
如果安装失败:
1、先判断能不能上网 ping www.baidu.com
2、索引文件没有更新
更新索引文件:sudo apt-get update
3、可能是由于软件包的依赖关系被破坏掉了
解决方式:sudo apt-get -f install
4、提示需要删除某个路径下的文件,照做..

不完全卸载:sudo apt-get remove 软件包名
完全卸载:sudo apt-get –purge remove 软件包名
下载源码存放在命令的执行路径:sudo apt-get source 软件包名
tar -xvf a.tar.gz解压文件
cd -返回上一次的操作路径
cd ..返回上一级路径

sudo apt-cache pkgnames | wc -l 该命令可以查看装的软件数量

history 查询当前终端历史命令

alias abc=’ls’ 给ls这个命令取了个别名
alias 命令别名=’命令’ =左右没有空格
注意:在终端上取的别名只能适合当前终端使用,若想要在其他终端生效则将alias命令添加到~/.bashrc配置文件
若配置文件修改,想要令其生效,则执行source ~/,.bashrc

wc -l用来统计行
wc -c统计字节
wc -w统计单词

grep “字符串” *:在当前目录下所有文件中查找字符串
grep “字符串” * -n(显示行号):查找字符串并显示行标
grep “字符串” * -n(显示行号) -R(递归子目录)
grep “^字符串” * -n(显示行号) -R(递归子目录):搜索以字符串开头
grep “字符串n()R():grep” * -n(显示行号) -R(递归子目录):搜索以字符串开头并结尾

find -name 文件名 : 搜索文件所在路径

注意:grep主要搜索文件内部字符串,find搜索路径下的文件名

ps -ef :主要显示linux环境下的任务的信息

剪切:-d指定特殊符号说明符
cut -d 分隔符 -f 一系列数字(数字之间用逗号分隔)
分隔符可以使用‘ ’也可以使用“ ”还可以什么符号都不加
cat 2.c | cut -d ‘ ’ -f 1

head -3 文件名:显示文件前3行
tail -3 文件名:显示文件后3行
显示文件第三行:cat 1.txt | head -3 | tail -1

file 文件名:查看文件类型
diff:比较两个文件
diff 1.c 2.c 只要终端没有输出结果,说明两个文件内容完全一样
vimdiff 文件名1 文件名2 显示对比两个文件
打补丁:
1、diff ruN old new(新版本)> xyz //将新老版本区别输入xyz
注意老版本要放在前面
r递归子目录,u保证产生的补丁文件格式统一,N保证补丁文件的正确修改
2、切换到老版本目录
进入老版本目录:cd old
更新老版本:patch -p1 < ../xyz //先进入老版本的文件夹

which ls:查找ls所在路径
whereis ls:查找包含ls
如果命令不能正常使用,会出现两种情况:
1、命令直接被删除
2、在PATH环境变量中,命令的所在路径被删除了
PATH变量的作用是:当执行一条命令时,从PATH存放的目录下寻找需要执行的命令

export:添加命令道环境变量中
echo PATHPATHexportPATH=PATH:绝对路径 在PATH原有内容的基础上添加新的路径
如果命令单独在终端执行只是临时生效。
永久生效的方式:将export命令添加到/etc/bash.bashrc文件中,最后source /etc/bash.bashrc
若啥玩意都没了,那就找别人的路径抄上去。

kill:发送信号(注册信号)
kill -信号值 进程号 给某个进程发送信号
kill -2 18447
-2信号的功能相当于 ctrl c
kill -l 看信号值 总共62个
kill将信号-2发送给18447这个进程,-2的作用就是杀死信号

man 1/2/3/4/5/6/7
man 1 shellmingl
man 2 系统调用
man 3 库函数

压缩文件:gzip 文件名 默认生成以.gz结尾的压缩文件
解压:gzip -d 1.c.gz
gunzip 1.c.gz

bzip2的压缩:解压方式和gzip完全一样,后缀不同
bzip2 1.c 生成1.c.bz2
bzip2 -d 1.c.bz2或者bunzip2 1.c.bz2
上面两种方式不能对目录直接压缩

打包:
tar -cvf new.tar new
c创建 v显示打包过程 f用来指定目标文件
注意:f必须放在所有选项最后而且必须要存在 v可以加可以不加
后续的压缩方式直接用gzip或者bzip2

拆包:
tar -xvf new.tar 会生成new文件夹
x拆包:

一步完成打包压缩:
tar -czvf new.tar.gz new
tar -cjvf new.tar.bz2 new

一步完成解压拆包:
tar -xzvf new.tar.gz
tar -xjvf new.tar.bz2

ln:创建链接文件
链接文件分为两种,分别为两种,分别是硬链接和软链接

硬链接:ln 路径/源文件 路径/目标文件
特点:
1修改源文件或者目标文件,那么另一个文件也修改
2 删除源文件,目标文件没有影响
3 不能对目录创建硬链接 目录的硬链接个数跟子目录有关
4 不能跨文件系统创建硬链接
5 不占磁盘空间

软链接:ln -s /路径/源文件 路径/目标文件
1 软链接文件本质存放的源文件路径
2 删除源文件,软链接文件失效
3 可以对目录创建软链接
4 可以跨文件系统创建软链接,但是创建的软链接文件必须存放在linux环境下
5 占用磁盘空间,相当于windows下的快捷方式
注意:如果创建软链接文件时,源文件没有使用路径,并且当前路径下又没有源文件,那么这个时候相应的会在目标路径下去寻找源文件

创建用户:sudo adduser
切换用户:su 用户名
添加一个已存在用户到指定用户组中:sudo usermod -a -G 组名 用户名

删除用户:
1、添加一个已存在用户添加到需要删除的用户组中
2、删除一个用户:sudo deluser 用户名
3、删除组:delgroup 组名
来回切换用户的时候,若想要切换到其他用户

磁盘分区:最多分成4个主分区,剩下的空间作为逻辑分区。主分区的编号是1~4,逻辑分区的编号是从5开始。
/dev/sda1 sd代表SCSI磁盘类型 a代表某种类型的第一个磁盘

sudo fdisk -l查看磁盘分区

挂载:
sudo mount -t 文件系统类型 /dev/设备文件 挂载点
sudo mount /dev/sdb1 /mnt

卸载:
sudo umount 设备文件或挂载点
sudo umount /dev/sdb1或/mnt
一定要注意:卸载的时候不要在挂载点卸载

/etc/fstab在这个文件里面涉及的是永久挂载的操作
tab键不能按出来就先空格再tab

0 0