Linux初学基本命令

linux文件目录

javascript 复制代码
1、bin->usr/bin			binary存放命令		所有账户可以使用		Linux可以执行的文件,我们称之为命令command
2、boot					存放系统启动文件
3、dev					device存放设备文件
4、etc					存放配置文件的目录 configration files
5、home					home家目录 存放普通用户个人文件
6、root					root账户家目录,普通用户的文件不能存放这里
7、lib					library 32库文件
8、lib64				64位库文件
9、proc					虚拟文件系统 内存里面的东西
10、sbin				supper存放命令 只有root能使用
11、tmp					用来存放临时文件
12、usr					文件安装目录 比如编译
13、var					variable 变化 可变的 存放一些经常变化的文件 such as:日志 ftp服务发布文件的目录
14、run					存放pid文件
15、sys					虚拟文件系统

linux模板虚拟机centros基础配置

1、确认是否联网

javascript 复制代码
# ping www.baidu.com

PING www.a.shifen.com (110.242.68.3) 56(84) bytes of data.
64 bytes from 110.242.68.3 (110.242.68.3): icmp_seq=1 ttl=128 time=10.8 ms
64 bytes from 110.242.68.3 (110.242.68.3): icmp_seq=2 ttl=128 time=11.1 ms

ctrl+c结束ping动作
1.窗口最大最小问题
	活动-->软件-->工作-->gnome-tweaks

2.打开新的窗口  ctrl+shift+n
	打开新的标签  ctrl+shift+t   alt+数字
3.窗口切换
	活动-->设置-->keyboard-->navigation-->switch window

4.桌面 任务栏
	活动-->软件-->工作-->extensions

5.中英文界面 中文输入法
	活动-->设置-->keyboard-->input source
6.关闭防火墙
	临时关闭
		 # systemctl stop firewalld
	永久关闭
		 # systemctl disable firewalld

	查看状态
	 	 # systemctl status firewalld

7.关闭selinux
  临时关闭
  	     # setenforce 0
  永久关闭(强烈建议)
 	     # vim /etc/sysconfig/selinux    修改如下行内容   a进入插入模式 -> 修改内容 -> esc -> :wq!
 	 SELINUX=disabled
 
  	 重启系统
  	     # reboot
  
  关机
  	 # shutdown -h now
  	 # init 0

  查看状态
  	 # getenforce

创建文件

1、touch 文件名字 用于linux创建文件 创建多个目录需要用空格隔开

javascript 复制代码
such as:(touch file.txt)(touch file.txt other.txt)

2、mkdir 目录名称 用于创建文件夹 创建多个嵌套文件夹需要用/隔开

javascript 复制代码
such as:(mkdir aaa)(mkdir -p aaa/bbb/ccc)

查看目录

1、ls 查看当前目录下面的文件或者文件夹

2、pwd 打印当前所在目录路径

复制

1、cp 当前文件 其他目录名称 拷贝文件夹需要在最后 -r

javascript 复制代码
such as:(cp aaa eee -r)

移动

1、mv 原文件路径 目标文件路径

javascript 复制代码
such as(mv file3.txt aaa/bbb)

移除

1、rm 文件名称 删除多个文件多个目录需要用空格 删除根目录(rm -rf /*)

javascript 复制代码
such as(rm -rf 文件路径)

查看/修改文件内容

查看

1、cat 文件名称 查看文档全文内容

such as(cat 1.txt)

2、more 文件名称 查看文件更多内容

3、tail 文件名称 查看文件尾部

4、head 文件名称 查看文件头部

5、grep 过滤关键字

javascript 复制代码
such as(grep "abc" /home/yuancheng)

修改

1、vim/vi 文件名称

such(vi/vim file.txt)

yy 复制光标所在行

dd 删除光标所在行

u 回退上次操作

按i进入编辑模式

退出保存时按Esc + :wq

退出不保存时按Esc+:q!(!为强制执行)

帮助
	--help
	man手册

--help 作为命令的参数出现

	没有被任何符号括起来的是必写项
	【】 可选项  
	...  多个  
	{} 必选项
	| 或者

help 作为命令出现

	所有bash内建命令都可以使用help查看帮助,比如:help cd
	内建命令:因为安装了bash所产生的命令

	bash 是命令解释器 把用户输入的命令解释给kernel

	Linux内核+工具软件 

	翻译 bash(shell) zsh csh tcsh

编辑器
vim

命令模式 用快捷键实现的各种操作
	进入编辑模式
		a  append
		A
		i  insert
		I
		o  
		O

	不管你在哪个模式下,按esc总能退回到命令模式


	复制
		yy
	粘贴
		p
		P

	剪切
	  dd
	删除
		dd
		D 删除行内当前光标之后所有的内容
	多行操作
		上面的快捷键前面加数字
		5dd 从当前行开始往下数5行全部删除

		4yy 从当前行开始往下数4行进行复制

	撤销
		u 
	撤销你的撤销
		ctrl+r

编辑模式
	ctrl+u 删除行内当前光标之前所有的内容

尾行模式
	/关键字	搜索关键字	n循环按关键字向下翻N按关键字向上翻
	:w  write 只保存
	:w /test/a.txt  另存为
	:q  quit 只退出
	:wq
	:w!  !表示强制
	:q!
	:wq! 
	:set nu
	:set nonu

	:定址s/被替换的内容/替换之后的内容/
	定址
		2s
		5s
		2,5s
		%s

	比如:
		:2s/nologin/NOLOGIN/
		:2,5s/nologin/NOLOGIN/
		:%s/nologin/NOLOGIN/
		:2s/nologin/NOLOGIN/g    g代表替换此行内所有的关键字 单行全局
	

可视化模式
	可视
	可视行
	可视块
		添加多行注释
			移动光标到一个开始行的第一个字符-->ctrl+v-->向下方向键移动到结束的位置--> I-->输入#号-->esc两次

文件管理
ls
	-l  long  长格式显示
		-rw-r--r-- 1 root root 0 Jul 24 09:52 file01
		- 文件类型
		rw-r--r--  权限信息
		1 如果是文件这里是硬链接数量  如果是目录,这里是目录下子文件的数量
		root  文件的所有者
		root  文件的所属组
		0     大小
		Jul 24 09:52  modify时间 文件的修改时间
		file01  文件名称

		7种文件类型
			f 普通文件
			d 目录文件
			s socket 套接字文件 
			p pipe   管道文件
			b block  块文件       				存储设备  
			c charactor 字符设备文件     
			l symblic link 符号连接文件  快捷方式文件

	-a	查看隐藏文件

	-h	human 人性化显示大小单位

	-d
		# cd /test
		# mkdir a
		# touch b
		[root@server test]# ll b
		-rw-r--r-- 1 root root 0 Jul 24 10:21 b
		[root@server test]# ll a
		total 0
		[root@server test]# ll -d a
		drwxr-xr-x 2 root root 6 Jul 24 10:20 a
		[root@server test]# ll /test
		total 0
		drwxr-xr-x 2 root root 6 Jul 24 10:20 a
		-rw-r--r-- 1 root root 0 Jul 24 10:21 b

查看当前所使用的终端
	# tty
	/dev/pts/1
	# ls -l /dev/pts/1
	crw--w---- 1 root tty 136, 1 Jul 24 10:06 /dev/pts/1

进程间通信的方式
	管道    本地进程间通信
		# cat /etc/passwd | grep root
		root:x:0:0:root:/root:/bin/bash
		operator:x:11:0:operator:/root:/sbin/nologin
	套接字  网络进程间通信

查看文件内容
	# cat 文件名称

	grep
	tail
	head
	各种编辑器

创建文件
	# touch 【路径】文件名称
	# touch file02 file03 file04

	注意:touch同名文件不会覆盖原始文件,只会修改它的时间
	
	创建隐藏文件
	# touch .文件名称 

创建目录
		# mkdir  【路径】目录名称
		# mkdir -v /test02/
		mkdir: created directory '/test02/'

		-v verbose
		# mkdir -pv a/b/c
		mkdir: created directory 'a'
		mkdir: created directory 'a/b'
		mkdir: created directory 'a/b/c'

		-p 创建连级目录

		# mkdir d e f


删除文件
		# rm  文件名称 文件01 文件02 ...
		-f 强制删除
删除目录
		# rm -r 目录 目录01 目录02 ...
		-f 强制删除

拷贝文件
	  # cp 源文件(目录)  目标目录/【文件名称】  
	  -r 拷贝目录需要加 

	  拷贝一个文件
	  	# cp a.txt /

	  拷贝的同时改名
	  	# cp a.txt /b.txt
	  取消提示直接覆盖
	 	 # \cp  e ../

剪切文件
		# mv 源文件(目录)  目标目录/【文件名称】

		目录同理


翻看历史命令
	上下方向键

用户组管理

添加用户

#useradd 账户名称
#adduser 账户名称
添加账户的同时会自动添加一个同名的组

查看用户

查看passwd文件
	以:为分隔符共7列
	1.用户名
	2.代表密码  可以删除
	3.uid
	4.gid
	5.描述信息   随便写或者不写 不用管他即可
	6.家目录路径 
	7.登录shell 
# id账户名称
uid=1002(xiaoer) gid=1002(xiaoer) groups=1002(xiaoer)
主属组
附属组

切换账户

#su - root
#exit

修改用户密码

	# passwd 
	# passwd 账户名称

删除用户

	# userdel -r 组名
	-r 连带家目录一起删除

gid 组id
	 # groupadd 组名
	 # groupadd group01

	 查看组
	 直接查看配置文件
	 # vim /etc/group
	 组名:代表组密码(不重要):组id:组成员

	 添加用户到组
	 # usermod -G group01 xiaoer
	 # id xiaoer
	 uid=1002(xiaoer) gid=1002(xiaoer) groups=1002(xiaoer),1003(group01)

	 修改用户主属组
	 # usermod -g group01 xiaoer

	 删除用户出组
	 # gpasswd -d xiaosan group01

	 添加用户到组、删除用户出组都可以直接修改配置文件来完成

	 删除组
	 # groupdel 组名

权限管理

基本权限ugo
	rw-    r--   r--
	 u      g    o
	user group  other

	rwx 顺序不能换
	r read    读
	w write   写
	x execute 执行

	# ll
	total 0
	-rw-r--r-- 1 w w 0 Jul 25 14:14 a
	执行文件
	[root@server w]# ./a
	-bash: ./a: Permission denied

修改权限
	[root@server w]# chmod +x a 
	[root@server w]# ll a 
	-rwxr-xr-x 1 w w 0 Jul 25 14:14 a

	[root@server w]# chmod u+x a 
	[root@server w]# ll a 
	-rwxr--r-- 1 w w 0 Jul 25 14:14 a
	[root@server w]# ./a

	# chmod u-r,o+w-r a

	7以内的加减法
	r 4
	w 2
	x 1
	无 0

	u            g          o
	7            4          3          743
	4+2+1        4+0+0      2+1
	rwx          r--        -wx

	# chmod 743 a

	# chmod 755 a
	# chmod 666 a

	# chmod 777 目录
	-R 递归修改  如果不加则只修改目录本身

目录和文件在权限上的区别
注意:下列规则仅针对普通用户(x除外)
	r  
		文件 看文件内容(cat vim)
		目录 看目录下的子文件(ls)
	w
		文件 修改文件内容(vim 重定向)
		目录 创建 删除(touch rm)
	x
		文件 运行文件 
				./文件 
				绝对路径/文件
				比如:
					# ./hello.sh
					# /hello.sh
		目录 cd

重定向
	# echo "hello world"
	[root@server w]# echo hello world
	hello world
	[root@server w]# echo "hello world"
	hello world
	[root@server w]# echo "hello world" > a.txt
	[root@server w]# cat a.txt 
	hello world
	[root@server w]# echo "nice" > a.txt
	[root@server w]# cat a.txt 
	nice
	[root@server w]# echo "application" >> a.txt
	[root@server w]# cat a.txt 
	nice
	application

文件归属

修改文件的所有和所属组
	# chown 用户 文件
	# chown 组 文件
	# chown 用户.组 文件
	# chown -R 用户.组 目录、
	-R 递归修改

终端字体

放大:ctrl+"+号"
缩小:ctrl+"-号"
相关推荐
wanhengidc4 分钟前
短视频运营行业该如何选择服务器?
运维·服务器
雨中rain18 分钟前
Linux -- 从抢票逻辑理解线程互斥
linux·运维·c++
-KamMinG29 分钟前
Centos7.9安装openldap+phpldapadmin+grafana配置LDAP登录最详细步骤 亲测100%能行
运维·grafana
Bessssss38 分钟前
centos日志管理,xiao整理
linux·运维·centos
s_yellowfish38 分钟前
Linux服务器pm2 运行chatgpt-on-wechat,搭建微信群ai机器人
linux·服务器·chatgpt
豆是浪个40 分钟前
Linux(Centos 7.6)yum源配置
linux·运维·centos
vvw&41 分钟前
如何在 Ubuntu 22.04 上安装 Ansible 教程
linux·运维·服务器·ubuntu·开源·ansible·devops
我一定会有钱43 分钟前
【linux】NFS实验
linux·服务器
王铁柱子哟-1 小时前
解决 正在下载VS Code 服务器... 问题
运维·服务器
Ven%1 小时前
如何在防火墙上指定ip访问服务器上任何端口呢
linux·服务器·网络·深度学习·tcp/ip