Linux命令基础

GUN组织与开源Linux

  1. GPL协议
  2. GCC编译器
  3. Emacs编辑器 / 常用Vim
  4. Bash Shell命令行
  5. GLIBC库
  6. 几个发行版:Ubuntu,Centeos
  7. POSIX标准:可移植都操作系统标准

linux学习内容

  1. shell(命令解释器)
  2. 编辑器(vim)
  3. 编译(GCC)
  4. gdb调试
  5. 制作静态库和共享库
  6. 项目工程管理(makefile)
  7. 系统编程和网络编程(API)

linux基础命令

一、命令与路径
  • man 命令(查看某个命令的用法)
man ls  	##查看ls命令的详细信息
  • history命令(查看使用过的命令,)
history 
  • ls命令(列出当前目录下所有文件以及目录)
ls 			#查看当前目录下的文件和所有目录
ls /一个路径  #就可以查看对应目录下的文件对应
ls -l        #显示详细信息
ls -a        #显示隐藏的信息
ls -R		#递归显示多层的目录信息
ls -lrt		#当前目录信息按时间显示
  • *号和?号(通配符)
ls *.c 		# *代表任意多个字符,所以是查找所有以.c为后缀的文件
ls fun.?	# ?代表任意一个字符,所有是查着名字以fun的命名的文件
  • 绝对路径与相对路径
/			# 以 / 开头的是绝对路径,不是 / 开头的是相对路径
二、目录相关操作
  • cd命令(跳转到某个目录)
cd ..		# 回到上级目录
cd 			# 回到家目录
cd ~		# 回到家目录
cd /目录		# 切换到某个目录	
  • ~ 与‘ # ’与‘ $ ’(根目录、root用户和普通用户)
~ 			# 代表根目录
$ 			# 代表普通用户
#			# 代表管理员用户(root)
sudo su 	 # 切换到管理员用户,输入当前用户密码就行
  • pwd 命令(查看当前目录的绝对路径)
pwd  		# 会显示当前目录绝对路径
  • mkdir 命令(创建目录,就是创建文件夹)
mkdir cc bb # 创建 cc 、bb 目录
mkdir bb/bbb# 在 bb 目录下创建一个 bbb 目录(要是不存在bb,就不能创建)
mkdir -p bb/bbb # 递归创建一个 bb / bbb 目录(即使bb目录不存在)
  • rmdir 命令(删除空目录目录的命令)
rmdir -p bb/bbb/ # 递归删除完 bb/bbb 所有空目录目录 
  • tree 命令(树状显示目录,非常好看)
sudo apt-get install tree 	# 安装tree
tree					  # 树状显示当前目录
  • which 命令(查看某个命令对应的位置)
which ls 				# 查看ls命令的位置
三、文件相关操作
  • touch 命令(创建一个或者多个文件)
touch aa bb		# 创建aa、bb两个文件
touch aa		# 如果aa已经存在,就会更新一下aa的访问时间
  • rm 命令 (删除文件或者目录)
rm 文件名 		# 删除该文件
rm -r 目录	 # 递归删除子目录
rm -rf *	   # 删除当前目录下所有文件以及目录
  • cp 命令 (文件拷贝+目录拷贝)
cp aa pp/  		# 把文件aa拷贝到pp目录下
cp aa pp/XXX	# 把文件aa拷贝到XXX里面
cp aa bb 		# 把文件aa拷贝到文件bb里面(内容的置换)
cp aa -r bb		# 把目录aa拷贝到目录bb里面
  • mv 命令 (文件移动或者目录移动)
mv aa bb 		# 同目录下把aa内容移动到bb,aa就没了
mv aa pp		# 把aa移动到pp下 aa就没了
mv aa pp/XXX	# 把aa移动到pp下的XXX里面, aa就没了
四、文件内容查看
  • cat 命令(显示文件所有内容)
cat a.txt		# 显示a的所有内容
  • more 命令(分页显示)
more a.txt 		# 分页显示,按enter往下走
  • less 命令(也是分页显示)
less a.txt		# 回车或者上下可以反复查看内容
  • head命令(从头开始看)
head a.txt		# 查看a文件的头10行,默认是10行
head -n 5 a.txt  # 查看a文件的头5行。
  • tail 命令(从尾开始看)
tail a.txt		# 查看a文件的尾10行,默认是10行
tail -n 5 a.txt  # 查看a文件的尾5行。
tail -f a.txt	# 跟踪a文件的末尾行。调试的时候非常好用
五、统计信息的一些命令
  • tree 命令(树状显示文件结构,很直观)
tree  		# 显示当前目录下的信息
  • wc 命令 (统计文件内容)
wc aa		# 依次显示行数、单词数、字节数
wc -l -w -c aa	#分别是行数、单词数、字节数
  • du 命令(显示当前目录占用)
du 			# 显示当前目录的信息
du -h		# 以人类的方式显示
  • df 命令(显示当前系统空间使用情况)
df			# 显示当前系统占用
df -h		# 用人类的方式显示
六、文件权限位和软连接
  • ls -l 命令的内容解析:
drwxr-xr-x 10 root root 4096 Sep 17 16:38 WebServer
# 对于以上命令的解析:
文件权限标志位 + 硬链接计数 + 用户 + 用户组 + 大小 + 日期

​ 用户组就是多个用户的时候管理用户的小组分配,这样可以给不同小组得到不同权限。

​ 文件权限标志位:文件类型+归属用户权限+归属组的权限+其他用户权限

​ 硬链接计数:多个文件引用同一个磁盘块(内存)上的内容,就有多个硬链接数

d目录文件
-普通文件
三个字母组成一个权限 : rwx
r可读
w可写
x可执行
-没有权限写-
  • ln命令(建立软/硬链接)
ln aa bb		# 建立bb是aa的硬链接(硬链接这两个只能是文件)
ln -s aa bb		# 建立bb是aa的软链接(aa和bb可以是目录,相当于是快捷方式)
  • unlink 命令(删除软/硬链接)
unlink bb		# 删除bb,硬链接计数就会减少,硬链接计数为零时,等于删除bb指向的文件
  • chmod 命令(改变文件权限)
chmod [ u|g|o|a ]  [+ | -]  [ r|w|x ]  aa 	# 这样就可以改变aa的权限
  • whoami 命令 (显示我是谁)
whoami 			# 就会在下面显示我是谁,我是那个用户
  • chown 命令 (改变用户的组)
chown long:long aa	# aa的用户和用户组都改了(要有root权限)
  • chgrp 命令 (更改组)
chgrp long   aa	#aa的用户组被更改
七、文件查找以及操作
  • find 命令(文件查找)该命令比较复杂,用到的时候百度一下就行。
  • xargs 命令(find文件后对文件进行操作)。
  • grep命令(find文件后进行过滤操作)
find dir [option] 内容  		# 格式
find ./ -name ".c" 		# 查找当前目录下,名字有.c的所有文件
find ./ -type -f			# 查找当前目录下,按类型找到所有普通文件 
find ./ -size +1M		# 查找当前目录下,大小大于1M的文件,不写加减就是等于1M
find ./ -size +1M -size -5M	# 查找当前目录下,大小大于1M的文件且小于5M的文件
find ./ maxdepth 1 -size +1M 	# 当前目录下只有一级的目录里大于1M的文件。
find ./ -size +1M -exec ls -l {}\; # 对查询到的结果进行一个详细信息显示,—exec 命令 {}\;是一个格式化的用法,更改命令就可以对查询结果进行操作。也可以用 -ok,一个安全模式
find ./ -size +1M |xargs ls -l # 对查询到的结果进行一个详细信息显示,管道符的使用,和-exec 差不多,但是比较好。可以避免溢出
find ./ -size +1M |grep txt # 对查询到的结果进行一个过滤,只查找txt文件
  • grep 命令(一个过滤命令)
grep -rn "main" *.c		#在所有。c文件中查找main,并且显示所在行数
cat aa | grep main		#查找指定文件里面是都有main
tail -f aa | grep connect	#显示文件的末尾更改啥的
八、压缩包管理
  • zip 命令(zip压缩包)
zip -r bb.zip bb		# 把bb目录压缩成到bb.zip,bb后面可以加其他文件或者目录
unzip bb.zip			# 把bb.zip解压缩到当前目录
  • gzip命令(.gz压缩包)
gzip -r bb.gz bb		# 把bb文件压缩成到bb.gz,只可以是文件
gunzip bb.gz			# 把bb.gz解压缩到当前目录
  • tar命令(最常用且实用,后缀:.tar.gz)
# z gz压缩包格式,c 压缩文件,x 解压缩,v 显示信息,f 指定压缩包名
tar zcvf bb.tar.gz bb	# 把bb文件或者目录压缩成bb.tar.gz文件
tar zxvf bb.tar.gz 		# 把bb.tar.gz解压缩,
  • rar命令(.rar压缩包)
rar a -r bb.rar bb		# 压缩包(可以无后缀) 原材料
rar x bb.rar			# 解压缩。
九、软件安装和卸载
  • apt-get 命令(自动安装很常用且好使,但是要知道软件名)
sudo apt-get install tree 		# 安装tree命令
sudo apt-get remove tree		# 卸载tree命令
  • dpkg 命令 (Ubuntu的,centeos的是rpm,大同小异)
sudo dpkg -i tree.deb 		# 安装tree命令
sudo dpkg -r tree.deb		# 卸载tree命令
  • 源码下载安装过程
# 1.解压缩压缩包得到文件
tar zxvf aaa.tar.gz
# 2.cd进入目录
cd aaa
# 3.检查环境
./configure
# 4.make
make
# 5.安装到系统目录下
sudo make install 
# 6.卸载
sudo make distclean

命令
sudo apt-get remove tree # 卸载tree命令


- dpkg 命令 (Ubuntu的,centeos的是rpm,大同小异)

```bash
sudo dpkg -i tree.deb 		# 安装tree命令
sudo dpkg -r tree.deb		# 卸载tree命令
  • 源码下载安装过程
# 1.解压缩压缩包得到文件
tar zxvf aaa.tar.gz
# 2.cd进入目录
cd aaa
# 3.检查环境
./configure
# 4.make
make
# 5.安装到系统目录下
sudo make install 
# 6.卸载
sudo make distclean
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值