Linux常用命令(Ubuntu为例)

1.软件安装命令

1.1软件包命名格式:
eg:
sl_3.03-17build2_amd64.bat
在这里插入图片描述
1.2dpkg
dpkg:离线安装,不需要连网,在安装这个软件的时候不会检查依赖。
  1.2.1安装

	sudo dpkg -i 安装包名

  1.2.2运行

	软件名

  1.2.3卸载

	sudo dpkg -r 软件名

  1.2.4完全卸载

	sudo dpkg -P 软件名

  1.2.5查看安装版本号

	sudo dpkg -l 软件名

  1.2.6查看安装路径

	sudo dpkg -L 软件名

  1.2.7查看软件安装状态

	sudo dpkg -s 软件名

1.3apt-get
apt-get在线安装,必须链接网络,会检查依赖,在安装这个软件的时候会一并将依赖的软件安装上。
  1.3.1设置下载的源
  先从各大服务器上获取服务的源。
  如在百度搜索“Ubuntu 18.04 清华源”,如下图
请添加图片描述
将其拷贝到Ubuntu18.04的  /etc/apt/sources.list   文件中

	sudo vim /etc/apt/sources.list
	sudo gedit /etc/apt/sources.list

在这里插入图片描述
  1.3.2更新源

	sudo apt-get update//将服务器上的软件包以文件的形式保存在本次/var/lib/apt/lists目录

  1.3.3下载并安装

	sudo apt-get install 软件名

  1.3.4卸载

	sudo apt-get remove 软件名

  1.3.5只下载不安装

	sudo apt-get download 软件名

  1.3.6下载源码

	sudo apt-get source 软件名

  1.3.7清除

	sudo apt-get clear //清除/var/cache/apt/archives目录下的软件包

2.压缩和打包命令

2.1压缩相关命令
  2.1.1xxx.gz

	gzip test	//gzip压缩的时候用时最短,压缩率最低
	gunzip test.gz	//解压缩

  2.1.2xxx.bz2

	bzip2 test	//bzip2压缩的时候用时居中,压缩率居中
	bunzip2 test.bz2	//解压缩

  2.1.3xxx.xz

	xz test	//xz压缩用时最长,压缩率最高(适合用于文件存档)
	unxz test.xz	//解压缩

2.2打包相关命令
使用 tar 完成打包或者拆包动作.

tar 参数如下:
-c  :打包
-x  :拆包
-v  :显示过程
-f  :后跟文件名
-z  :gzip压缩
-j  :bzip2压缩
-J  :xz压缩

  2.2.1打包

	tar -cvf test.tar test	//将test的目录打包成test.tar的文件

  2.2.2拆包

	tar -xvf test.tar

  2.2.3打包的同时进行压缩

	tar -czvf test.tar.gz test	//将test进行打包并压缩为gz格式
	tar -cjvf test.tar.bz2 test	//将test进行打包并压缩为bz2格式
	tar -cJvf test.tar.xz test	//将test进行打包并压缩为xz格式

  2.2.3拆包并解压

	tar -xzvf test.tar.gz	//将test.tar.gz拆包并解压
	tar -xjvf test.tar.bz2	//将test.tar.bz2拆包并解压
	tar -xJvf test.tar.xz	//将test.tar.xz拆包并解压

  2.2.4万能拆包解压命令

	tar -xvf test.tar.xx	//xx三种压缩命令中的一种

3.文件操作相关命令

3.1ls命令

	ls -l	//查看文件的详细属性
	ll		//ls -l
	ls -a	//显示目录下面所有文件,包括隐藏文件
	ls -lh	//将文件的大小,转换为相应的数量级进行显示
	ls -R	//递归显示出所有文件
	ls -i	//显示inode号

3.2cd命令

	cd 相对路径/绝对路径
	cd ~	//家目录
	cd 		//家目录
	cd .	//当前目录下
	cd ..	//回到上一层目录
	cd -	//回到上一层操作的目录

3.3pwd
显示当前所在的绝对路径
3.4clear
清理当前屏幕
快捷键: ctrl + l
3.5touch

	touch test	//如果文件不存在,会创建一个文件
				  如果文件存在,则会更新时间戳.但是文件的内容不会发生任何变化

3.6mkdir

	mkdir test	//创建一个test的文件夹. 如果目录存在. 会报错
	mkdir -m 664 test	//创建一个具有指定权限的目录
	mkdir -p 01day/test/demo	//创建目录及其子目录

3.7rm

	rm test	//此时test必须为空目录
	rm -rf *	//-r:递归 -f:强制

快照: 虚拟机 —> 快照(记录当前状态,一遍以后恢复)
3.8chmod

用法1:
	chmod 0664 test	//修改文件权限
用法2:
	u: 用户
	g:组
	o:其他
	a:代表ugo
	
	r: 可读  4
	w:可写   2
	x: 可执行 1
	-:无权限 0
	
	+:给权限
	-:去除权限
	chmod u+r 01point.c
	chmod ug+w 01point.c
	chmod a-x 01point.c

3.9cp

	-a:相当于 -d、-p、-r 选项的集合,这几个选项我们一一介绍;
	-d:如果源文件为软链接(对硬链接无效),则复制出的目标文件也为软链接;
	-i:询问,如果目标文件已经存在,则会询问是否覆盖;
	-l:把目标文件建立为源文件的硬链接文件,而不是复制源文件;
	-s:把目标文件建立为源文件的软链接文件,而不是复制源文件;
	-p:复制后目标文件保留源文件的属性(包括所有者、所属组、权限和时间);
	-r:递归复制,用于复制目录;
	-u:若目标文件比源文件有差异,则使用该选项可以更新目标文件,此选项可用于对文件的升级和备用。

	cp 路径+源文件 目标目录
	cp  路径+源文件 路径+新文件名称  //将源文件复制一份,并且起一个新的名字

3.10mv

	mv  路径+源文件 目标目录
	mv  文件名 新文件名	//重命名

3.11cat

	cat -n test	//显示终端,并显示行号
	cat /etc/issue	//查看Ubuntu的版本号
	uname -r	//查看内核版本号
	---------------------------------------------------------------------------
	>: 重定向
	cat 1.c > 2.c  //将1.c文件重定向到2.c中(如果2.c不存在会创建,如果2.c存在会清空)
	cat 1.c 2.c > 3.c
	>>:追加
	cat 1.c >> 2.c  //在2.c的尾部追加1.c文件的内容
	---------------------------------------------------------------------------
eg:请将/etc/passwd文件的第41行显示出来
	head -41 /etc/passwd > test.txt
	tail -1 test.txt
或
	head -41 /etc/passwd | tail -1	//|:将第一条命令的结果作为后一条命令的参数

3.12wc

	wc test	//将文件的行号,单词个数,字符个数显示到终端上
	wc -l test //显示文件的行号
	wc -c test //显示文件内字符的个数
	wc -w test //显示文件内单词个数

3.13head

	head test	//默认显示文件开头10行
	head -26 test	//显示文件开头26行

3.14tail

	tail test	//默认显示文件结尾10行
	tail -26 test	//显示文件结尾26行

3.15grep
grep:功能:文件内字符串的搜索

	-n :在搜索的时候显示搜索到的行号
	-R:递归搜索(先在当前目录下搜索,然后再当前目录的子目录下搜索)
	-i:忽略大小写
	-w:按照单词精确搜索
	grep "string" 参数 文件名
	grep "^string$" 参数 文件名
	-------------------------------------------------------------------
eg1:
	grep "main" * -n //在当前目录下搜索所有文件中的main字符串
	grep "main" * -nR //在当前目录下及子目录搜索所有文件中的main字符串
	grep "main" * -niR //在当前目录下及子目录搜索所有文件中的main字符串,忽略大小写
	grep "main" * -niRw //在当前目录下及子目录搜索所有文件中的main字符串,忽略大小写
eg2:
	grep "^main" * -n //在当前目录下搜索所有文件中的以main(行)开头字符串
	grep "main$" * -n //在当前目录下搜索所有文件中的以main(行)结尾字符串
	grep "^main$" * -n //在当前目录下搜索所有文件中的只有main(一次)的行

3.16find
find:功能:搜索文件

	find 路径 -name 文件名
	------------------------------------------------------------
	find ./ -name test.c	//在当前目录及子目录搜索test1.c的文件
	find -name test*	//在当前目录及子目录搜索test1.c的文件

3.17cut
cut:功能:文件内字符串的裁剪提取

	-f:提取的域
	-d: 裁剪的分隔符号
	cut -d "分隔符号" -f 域的序号 文件名
	-------------------------------------------------------------------------
eg:
	/*addr.txt文件内容如下
	河北省:张家口市:桥西区:建材路:文化产业园*/
	-------------------------------------------------------------------------
	cut -d ":" -f 1 addr.txt	//河北省
	cur -d ":" -f 1,2,5 addr.txt	//河北省:张家口市:文化产业园
	cut -d ":" -f 1-3,5 addr.txt	//河北省:张家口市:桥西区:文化产业园

3.18chown
修改文件的用户

	chown 修改的用户 文件名
	chown 用户:组 文件名
	------------------------------------------------------------------
	sudo chown root test.c	 //将test1.c文件用户修改为root
​	sudo chown root:root test1.c //将test1.c文件用户和组都修改为root
	sudo chown :root test1.c //将test1.c文件组修改为root

3.19chgrp
修改文件所述的组

	chgrp 组名 文件名
	sudo chgrp linux test.c	 //修改test1.c的组名为linux

3.20ln
  3.20.1软连接
  软链接类似于windows上的快捷方式。

	ln -s 被链接的文件 链接文件

特点:
  ​ 1.软连接文件的类型是l
​   2.软连接可以链接目录,软连接能够链接文件,软连接又可以被软连接
​   3.如果删除被链接的文件,软连接就断开了,如果文件重新创建,软连接又可以使用了
​   4.软连接不会增加源文件的链接数
​   5.删除链接文件,被链接的文件不会有改动
  3.20.2硬链接
  ​硬链接相当于给文件起别名,文件所占的硬盘空间没有增加。

	ln 被链接的文件 链接文件

​ 特点:

​   1.硬件文件的类型是普通文件
​   2.硬链接只能链接文件,不能链接目录
​   3.当硬链接的文件删除后源文件依然可用,删除源文件后链接也可以使用
​   4.硬链接文件的链接数会随着链接次数增加,并且inode相同

4.用户管理相关命令

4.1 adduser
添加用户

	-u 指定该账户的uid
	-g 指定该账户的主群组,修改passwd文件
	-G 指定该账户的次要群组,修改group文件
	-M 强制不要创建用户家目录
	-m 强制建立用户家目录
	-d 指定用户家目录的位置,不使用默认的位置
	-s 指定用户的shell,默认为/bin/bash
	--------------------------------------------------------------------
	sudo adduser 用户名
	注:新添加的用默认没有sudo的权限,hello 不在 sudoers 文件中。此事将被报告。
	su root //切换到root用户下
	vim /etc/sudoers
	添加:hello ALL=(ALL) ALL

4.2addgroup
添加组

	sudo addgroup farsight

4.3su
切换用户

	su 用户名

4.4usermod
用户信息修改命令

	-u 变更用户UID
	-c 填写用户账户备注信息
	-g 变更用户所属组
	-G 变更扩展用户组
	-s 变更默认shell
	-L 锁定用户禁止其登陆
	-U 解锁用户允许登陆
	-e 账户到期时间
	-d -m -m与-d连用 可重新指定用户家目录并迁移旧数据
	-a,–append将用户追加到-G选项提到的补充GROUPS上,而不将用户从其他组中删除
	---------------------------------------------------------------------
	sudo usermod -g farsight hello	//将hello用户的组修改为farsight
	sudo usermod -c farsight hello	//修改hello用户在/etc/passwd文件的第5个域(它是用户的登录)
	sudo usermod -m -d /home/farsight hello	//将hello用的主目录移动并重名为/home/farsight
	sudo usermod -l farsight hello	//将hello的用户名修改为farsight
	sudo passwd 用户名	//修改用户的密码

4.5 id
查看用户和组的命令

	id 用户名

4.6 delgroup
删除组

	sudo delgroup 组名

4.7 deluser
删除用户

	sudo deluser 用户名

5.关机重启命令

(shutdown,reboot)

关机
sudo shutdown -h 12:10 //12:10关机
sudo shutdown -h +50 //50分钟后关机
sudo shutdown -h now //立即关机

重启(sudo reboot)
sudo shutdown -r 12:10 /12:10重启
sudo shutdown -r +50 //50分钟后重启
sudo shutdown -r now //立即重启

6.磁盘管理相关的命令

6.1向Ubuntu插入U盘
虚拟机—>可移动设置---->找到U盘—>连接
6.2查看设备是否存在

	ls /dev/sd*
​/dev/sda //Ubuntu系统的磁盘
/dev/sda1 //Ubuntu系统磁盘分区

/dev/sdb //U盘
/dev/sdb1 //U盘的第一个分区
/dev/sdb2 //U盘的第二个分区

6.3查看分区相关命令

	sudo df -h	//查看分区使用率
	sudo fdisk -l	//查看磁盘的详细信息

6.4给U盘分区

	sudo fdisk /dev/sdb
	d   删除分区
	n   添加新分区
	p   打印分区表
	m   打印此菜单
	w   将分区表写入磁盘并退出
	q   退出而不保存更改

6.5给U盘分区格式化

	sudo mkfs.ext4 /dev/sdb1	//如果使用的mydisk格式化为ext2的格式
	sudo mkfs.ntfs /dev/sdb1

6.6将U盘的分区挂载到系统上
挂载后就可以向目录里拷贝文件,就相当于在对磁盘操作。

	sudo mount /dev/sdb1 ~/udisk

6.7取消挂载

	sudo umount ~/udisk

7.网络管理相关命令

7.1网络基础知识
(1)表示:点分十进制表示 192.168.50.82

(2)组成:网络号(192.168.50.0)+主机号(82)

(3)种类:ipv4(4字节 32bit) ipv6(16字节 128bit)

(4)网段的划分:A B C D E

种类网络号主机号高位规定
A1字节3字节0 [0-127]
B2字节2字节10 [128-191]
C3字节1字节110 [192-223]
D组播1110[224-239]
E未使用[240-255]

(5)子网掩码:根据ip地址获取网络号 192.168.50.82 & 255.255.255.0 = 192.168.50.0

(6)网关 :一般认为路由器的ip地址就是网关 192.168.50.1

(7)DNS :域名解析器 www.baidu.com>DNS>39.156.66.14
​114.114.114.114
8.8.8.8
7.2虚拟机联网的三种模式
桥接模式:window和Ubuntu共用一个网卡,但是给两个操作分别分配单独ip地址
​ windows 192.168.50.82 ubuntu 192.168.50.83

NAT模式 : Ubuntu使用windows的ip地址访问外网
​ windows 192.168.50.82 Ubuntu 172.169.15.16

仅主机模式:ubuntu只能和window通讯不能和外网通讯
7.3联网准备阶段

关机—>在vmware workstation—>编辑—>虚拟网络编辑器—>更改设置—>还原默认配置

​ 在vmware workstation—>虚拟机—>设置—>硬件—>网络配置—>(桥接/NAT模式)
7.4联网
  7.4.1查看ip地址的命令​

	ifconfig(ubuntu) 
	ipconfig(windows)

  7.4.2查看网络是否连通

	​ ping www.baidu.com

  6.4.3静态ip和动态ip的设置

DHCP:让电脑自动获取ip地址
图形界面静态ip设置:(重启ubuntu)
在这里插入图片描述
通过内核配置文件静态设置ip:

	sudo vim /etc/netplan/01-network-manager-all.yaml
	sudo netplan apply #让网络生效
# Let NetworkManager manage all devices on this system
network:
  version: 2
  renderer: NetworkManager
  ethernets:
      ens33:
          dhcp4: no
          optional: no
          addresses: [192.168.50.100/24]
          gateway4: 192.168.50.1
          nameservers:
              addresses: [8.8.8.8]

7.通配符的使用

*7.1 通配符

	#通配任意个字符的字符串ls *.c

7.2 ?通配符

	#通配任意一个字符
	ls ?.c	#1.c 2.c 3.c

7.3 []通配符

	[字符1字符2字符3...]
	通配[]内的任意的一个字符
	ls [123].c   

	[字符1-字符n]
	通配[]内区间中的的任意的一个字符
	ls [1-3].c   
	
	[^单词列表]
	通配除[]内部区间中的的任意的一个字符
	ls [^1-3].c    
  • 2
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值