3.3 Linux 文件管理

1、查看系统信息
tty 命令
  • 描述:查看当前系统在哪个终端
  • 语法:tty

Linux默认情况下提供6个虚拟终端来让用户登录,系统将F1~F6定义为tty1~tty6。

  • ctrl+alt+(F1~F6) :从图形界面切换到命令行界面的第 n 个虚拟终端(F1 是图形界面,F2、…、F6 是命令行界面)。
  • alt+F1~F6 可以在命令行界面终端之间切换。
# 查看当前终端
tty			
who -m
who am i
w
who 命令
  • 描述:查看当前登入主机的用户终端信息
  • 语法:who [选项]
# 查看当前登入主机的用户终端信息
who -m 
who am i
tty
w
w 命令
  • 描述:显示用户登录的信息
  • 语法:w 用户名

命令 w 的功能最全面,按以下顺序排列:当前时间,系统启动到现在的时间,登录用户的数目,系统在最近 1 分、5 分和 15 分的平均负载。

  • USER 显示登陆用户帐号名。
  • TTY 用户登陆所用的终端。
  • FROM 显示用户在何处登陆系统。
  • LOGIN@ 是 LOGIN AT 的意思,表示登陆进入系统的时间。
  • IDLE: 用户空闲时间,从用户上一次任务结束后,开始记时。
  • JCPU 和该终端(tty)连接的所有进程占用的时间
  • WHAT 表示当前执行的任务。
w root				# 查看root用户登录终端情况
uname 命令
  • 描述:显示操作系统的信息,包括版本、平台的信息
  • 语法:uname [选项]
    • -a, --all 以如下次序输出所有信息。其中若-p 和 -i 的探测结果不可知则被省略:
    • -s, --kernel-name 输出内核名称
    • -n, --nodename 输出网络节点上的主机名
    • -r, --kernel-release 输出内核发行号
    • -v, --kernel-version 输出内核版本
    • -m, --machine 输出主机的硬件架构名称
    • -p, --processor 输出处理器类型或"unknown"
    • -i, --hardware-platform 输出硬件平台或"unknown"
    • -o, --operating-system 输出操作系统名称
    • --version 显示版本信息并退出
# 查看操作系统的信息
uname -a# 查看主机名
hostname# 查看操作系统版本
cat /etc/redhat-release# 查看语言、字符集设置 
cat /etc/locale.conf # 查看cpu信息
cat /proc/cpuinfo# 查看内存信息
cat /proc/meminfo# 查看系统时间
date# 查看系统运行时间
uptime# 查看系统时区
timedatectl
shutdown 命令
  • 描述:
  • 语法:shutdown [选项] [参数]

-k :不是真的关机,只是发送警告消息出去

-r :将系统的服务停掉之后就重启(常用)

-h :将系统的服务停掉之后立即关机(常用)

-n : 不经过 init 程序,直接以 shutdown 的功能来关机

-f :关机并开机之后,强制略过 fsck 的磁盘检查

-F :系统重启之后,强制进行 fsck 的磁盘检查

-c :取消已经在进行的 shutdown 命令的内容

shutdown 命令用于安全关闭 Linux 系统。有些用户会使用直接断掉电源的方式来 关闭 Linux,这是十分危险的。因为 Linux 后台运行着许多进程,所以强制关机可能会导致进程的数据丢失,使系统处于不稳定的状态,甚至会损坏硬件设备。

执行 shutdown 命令时,系统会通知所有登录的用户系统将要关闭,并且 login 指

令会被冻结,即新的用户不能再登录系统。

# 关机
shutdown		 	正常关机
shutdown -h now		立即关机
shutdown -h 10 		10分钟之后关机
shutdown -c			取消关机
poweroff			发送ACPI指令,切断电源供应
init 0# 重启
reboot				重启
shutdown -r 		重启
shutdown -r now		立即重启
init 6
init 命令

在 centos7/rhel7 之前的 linux 版本,linux 运行级别分为 7 个级别,分别是 0~6 级别:

  • 0 代表关机(poweroff)
  • 1 代表单用户模式
  • 2 代表多用户模式,但没有网络服务
  • 3 代表完整多用户模式,有网络服务,登陆后进入控制台命令行模式 :multi-user.target
  • 4 运行级别,预留,系统未使用
  • 5 代表图形界面:graphical.target
  • 6 代表系统正常关闭并重启

一般默认运行级别设置为 3 或 5 级别。

init 命令:init 用于切换系统的运行级别,切换的工作是立即完成的。

# 切换运行级别为6:重新启动
init 6# 切换运行级别为0:关机
init 0# 切换运行级别为3:字符界面
init 3# 切换运行级别为5:图形界面
init 5# 切换到命令行界面:
systemctl isolate multi-user.target# 切换到图形界面
systemctl isolate graphical.target
# 显示当前运行级别以及系统当前时间
who -r # 显示前一个运行级别(无则显示”N”),当前运行级别
runlevel #查看默认的运行级别
systemctl get-default
# 修改启动时的默认级别
vim /etc/inittab  进入文件后将 5 改为 3 # 修改默认的运行级别为5
systemctl set-default graphical.target 
cd 命令
  • 描述:切换目录
  • 语法:cd 目标目录
cd .. 			# 返回上一级目录
cd -			# 在最后切换的两个目录中切换
cd | cd ~		# 返回用户的所在的家目录
2、文件目录的增删改
mkdir 命令
  • 描述:创建目录
  • 语法:mkdir [选项] 目录名称
    • -p 递归创建目录
mkdir /opt/test/		# 在 /opt 目录下创建 test 目录
mkdir /opt/aa/bb/cc		# 在 /opt 目录下递归创建 aa/bb/cc/ 目录
mkdir test{1..5}		# 在当前目录下创建 test1,test2,test3,test4,test5 目录
touch 命令
  • 描述:创建文件
  • 语法:touch 文件名
touch data.txt				# 在当前目录下创建 data.txt 文件
touch data{1..5}.txt		# 在当前目录下批量创建 data1.txt ~ data5.txt 文件
cp 命令
  • 描述:复制文件或目录
  • 语法:cp [选项] 源文件|目录 目标文件|目录
    • -f(force) 覆盖目标同名文件或目录时不进行提醒,而是直接强制复制
    • -i 覆盖目标同名文件或目录时提醒用户确认
    • -p(privilege) 复制时保持源文件的权限,属主及时间标记等属性不变
    • -r(recursion) 复制目录时必须使用此选项,表示递归复制所有文件及子目录
cp -r /home /opt			# 将 /home 目录 复制到 /opt 目录下
cp hello.txt hello1.txt		# 复制当前目录下hello.txt 并改名为hello1.txt 到当前目录
rm 命令
  • 描述:删除文件|目录
  • 语法:rm [选项] 文件|目录
    • -f(force) 删除文件或目录时不进行提醒,而直接强制删除
    • -i 删除文件或目录时提醒用户确认
    • -r(recursion) 删除目录时必须使用此选项,表示递归删除整个目录树
    • -v --verbose 显示指令执行过程
rm -rf test{1..10}  # 批量删除test1 ~ test10 文件
mv 命令
  • 描述:移动文件或目录,如果目标位置与源位置相同,则效果相当于为文件或目录改名
  • 语法:mv 源文件|目录 目标文件|目录
mv test.txt test1.txt 	# 将当前目录下的 test.txt 改名为 test1.txt
3、文件目录的查看
pwd 命令
  • 描述:查看当前的工作目录(绝对路径显示),实际读取的是$PWD环境变量的值
  • 语法:pwd
pwd				# 查看当前的工作目录
echo $PWD		# 查看当前的工作目录
ls 命令
  • 描述:显示指定目录内容及目录中隐藏的文件
  • 语法:ls [选项] 参数
    • -a --all 显示所有文件,包括以“.”开头隐藏的文件
    • -l: 使用长列表格式显示
    • -d 只显示目录本身的属性,不显示目录中的内容,一般结合-l 使用
    • -h 显示目录或文件大小,需要结合-l 结合使用,将会显示 KB、MB 等单位
    • -R 以递归的方式显示指定目录及其子目录中的所有内容
alias 命令
  • 描述:给命令添加别名
  • 语法:alias 别名="..."

给命令设置永久的别名

  • 设置永久全局别名:编辑 /home/usename/.bashrc 配置文件 添加别名
  • 设置永久局部别名:编辑 /etc/bashrc 配置文件 添加别名
# 设置临时的catens33别名
alias catens33="cat /etc/sysconfig/network-scripts/ifcfg-ens33"# 取消别名
unalias catens33
which 命令
  • 描述:显示命令所在的目录
  • 语法:which 命令
    • -a 命令1 命令2 命令n 查看多个命令所在位置
which cat			# 显示cat命令所在的目录
which -a vim cat	# 同时查看vim和cat命令的所在位置
find 命令
  • 描述:搜索和查找文件和目录列表,可以通过权限,用户,组,文件类型,日期,大小等条 件查找文件。
  • 语法:find pathname -option [-print ] [ -exec | -ok command ] {} \;
    • 命令参数:
      • -print: find命令将匹配的文件输出到标准输出。
      • -exec: find命令对匹配的文件执行该参数所给出的shell命令。\(转义字符)
      • -ok: 和-exec的作用相同,只不过以一种更为安全的模式来执行该参数所给出的shell命令,在执行每一个命令之前,都会给出提示,让用户来确定是否执行。
    • 选项:
      • -name fileName 按文件名称查找,区分文件的大小写
      • -iname fileName 按文件名称查找,不区分文件的大小写
      • -type b/d/c/p/l/f 按文件类型查找
        • f - 普通文件。 d - 目录。
        • b - 块设备文件(随机读取) l - 符号链接文件。 s - socket文件 ip+port
        • c - 字符设备文件(顺序读取)。 p - 管道文件,进程之间通信
      • -mtime -n|+n 按文件更改时间来查找文件,-n:n天以内,+n:n天以前
      • -atime -n|+n 按文件访问时间来查,-n:n天以内,+n:n天以前
      • -ctime -n|+n 按文件创建时间来查找文件,-n:n天以内,+n:n天以前
      • -newer fileName 查找比fileName内容更新时间新的文件
      • -size -n|+n 按照文件大小查询文件。单位:k, M, G
      • -maxdepth 层级数 限制目录查找层级(从外往里找),默认递归查找整个目录
      • -perm 按文件|目录的权限查找
      • -empty 查找空文件
      • -user username 按文件的所有者来查找
      • -group groupname 按文件的所在组来查找
      • -nogroup 查无效属组的文件,即文件的属组在/etc/group中不存在
      • -nouser 查无效属主的文件,即文件的属主在/etc/passwd中不存在
      • -prune 不在当前指定目录中查找
    • 逻辑运算符
      • 与(-a)、或(-o)、非(!)
find /mnt -name test1.txt			# 按文件名称查找test1.txt(不区分大小写)
find /mnt -iname test1.txt			# 按文件名称查找test1.txt(区分大小写)
find /root -type f -name "*.php"    # 查找/root目录下所有以.php结尾的文件# 对找到的.php文件进行长格式查看
find /root -type f -name "*.php" -exec ls -l {} \;
# 删除找到的.php文件
find /root -type f -name "*.php" -exec rm -rf {} \;# 在/root下查找文件更新日是在距现在时刻二天以内的文件
find /root -type f -mtime -2
# 在/root下查找文件更新日是在距现在时刻二天以前的文件
find /root -type f -mtime +2
# 在/root下查找文件更新日时在距现在时刻二分钟以内的文件
find /root -type f -mmin -2
# 在/root下查找文件更新日时在距现在时刻二分钟以前的文件
find /root -type f -mmin +2
# 查找文件更新时间比文件test.txt的内容更新时间新的文件
find ./ -type f -newer test.txt# 查找/boot目录下大于2M的文件
find /boot -type f -size +2M
# 查找/boot目录下大于2M的文件,并显示文件大小
find /boot -type f -size +2M -exec du -sh {} \;
# 查找/mnt目录下小于2M的文件,并删除
find /mnt -type f -size -2M -exec rm -rf {} \;# 在/etc目录下找ifcfg-ens33文件,限制查找目录的层级为2层。注:-maxdepth放在-name前
find /etc -maxdepth 2 -name ifcfg-ens33		# 目录小于3层,查找不到。>=3可以查到# 查找/root权限为644的所有文件
find /root -perm 644 -type f -exec ls -l {} \;
# 把/mnt目录下权限为777文件改为644
find /mnt -perm 777 -type f -exec chmod 644 {} \;# 在/root路径下查找所有空文件
find /root -type f -empty 
# 在/root路径下查找所有空目录
find /root -type d -empty# 查找/ 目录下所有者root的、名为date1.txt的文件
find / -user root -name date1.txt
# 查找/ 目录下属于Group chrony的所有文件
find / -group chrony -type f 
# 查找无效属组的所有文件
find / -nogroup -type f
# 查找无效属主的所有文件
find / -nouser -type f# 查找/root目录下不是以.php结尾的文件
find /root ! -name "*.php"
# 查找/root目录下以.txt或以.php结尾的文件
find /root -name "*.txt" -o -name "*.php"
# 查找/root目录下权限为644和以.txt结尾的文件
find /root -name "*.txt" -a -perm 644
find / -name passwd

find / -path /etc -prune -o -name passwd

find / -path /etc -prune -o -name passwd -print

stat 命令
  • 描述:显示文件|目录的状态信息,输出信息比ls命令的输出信息要更详细
  • 语法:stat 文件|目录
stat /root			# 查看root目录的详细信息
cat 命令
  • 描述:显示文件的内容
  • 语法:cat [选项] 文件
    • -n 对输出的所有行编号
nl 命令
  • 描述:将指定的文件添加行号标注后写到标准输出。果不指定文件或指定文件为"-" ,程序 将从标准输入读取数据
  • 语法:nl 文件
head 命令
  • 描述:从文件开头查看部分内容,默认显示10行
  • 语法:head [选项] 文件
    • -n “-n”选项指定需要显示多少行的内容
cat -n /etc/passwd | head -n 5 # 显示passwd文件头部5行(带行号)

tail 命令
  • 描述:从文件末尾查看部分内容,默认显示10行。此命令比较适合查日志,因为最新的日志总是在文件的最后。
  • 语法:head [选项] 文件
    • -n 指定需要显示多少行的内容
    • -f 跟踪文件尾部内容的动态更新
cat -n /etc/passwd | tail -n 5		# 显示passwd文件末尾5行(带行号)
tail -f /var/log/messages

more 命令

-数字 每页显示几行

-p 显示下一页的时候,删除上一页的内容

在阅读时可以按Enter键向下滚动查看,按Space键可以向下翻一屏,按“q”键退出并返回原来的命令环境

more /etc/passwd
less 命令

less命令使用方法与more命令基本类似,但是比more更好的是,less命令既可以向下翻页也可以向上翻页,而more命令只能向下翻页,不能向上翻页。

less /etc/passwd
4、文件目录的统计与操作
wc 命令
  • 描述:统计文件内容中的单词数量、行数等信息,可以同时统计多个文件。
  • 语法:wc [选项] 文件名
    • -c:统计文件内容中的字节数
    • -l:统计文件内容中的行数
    • -w:统计文件内容中的单词个数(以空格或指标位作为分隔)
wc -l /etc/passwd						# 统计passwd文件的行数
find /etc -name "*.conf" | wc -l		# 统计/etc下文件名以".conf"结尾的文件个数
du 命令
  • 描述:统计目录以及空间的占用情况
  • 语法:du [选项] 参数
    • -a 统计当前目录和子目录下所有文件所占用的磁盘大小
    • -h 显示出统计结果,使用-h 选项后将显示出 KB、MB 等单位
    • -s 只统计当前目录(不包括子目录和文件)所占用的空间总的大小
sort 命令
  • 描述:它将文件进行排序(默认按升序排序),并将排序结果标准输出
  • 语法:sort [选项] 文件名
    • -r: 降序排序;
    • -t: 指定分隔符,默认分隔符是制表符;
    • -k [n,m]: 按指定字段范围排序。从第 n 个字开始,到第 m 个字(默认到行尾)
    • -u: 删除重复行。就是 uniq 命令;
    • -f: 忽略大小写;()
    • -b: 忽略每行前面的空白部分;
    • -n: 以数值型进行排序,默认使用字符串排序;
    • -o --output 将排序结果输出到源文件
# 以“:”分隔且以第3个字段按照数字排序对文件内容进行正向排序
sort -n -t ":" -k 3 sortTest.txt# 以":"分割,指定第2段并按照数字对文件内容进行逆向排序
sort -n -r -t ":" -k 2  fruit.txt# 查找 etc 目录下的最大5个文件
find /etc -type f -exec du -sh {} \; | sort -n -u | tail -5
uniq 命令
  • 描述:去除文件中的重复行,一般情况先用sort排序再进行去重。
  • 语法:uniq [选项] 文件名
    • -c 在每列旁边显示该行重复出现的次数(uniq)
    • -i 忽略大小写。(ignore-case)
    • -d 仅显示重复出现的行列(repeated)
    • -u 仅显示出现一次的行列(unique)
uniq uniqTest.txt				# 去重显示文件内容
sort uniqTest.txt | uniq		# 排序并去重显示文件
sort uniqTest.txtt | uniq -c	# 统计每行出现的次数
uniq -d uniqTest.txt			# 查找文件中重复出现的行
uniq -u uniqTest.txt			# 查找文件中出现过一次的行
grep 命令
  • 描述:按关键字 检索、过滤文件内容
  • 语法:grep [选项] 模式或“关键字“ 文件列表
    • -n 显示匹配行的行号
    • -v 显示不包含关键字的行
    • -i 忽略大小写
    • -l 一般和-r联用, 只显示包含关键字的文件的名字, 而不是显示文件内容
    • -r 递归检索
    • -w 按照单个词语的方式匹配
# 过滤出包含root的行并显示该行的行号
grep -n "root" /etc/passwd				# 过滤出行首是root的行
grep ^"root" /etc/passwd	# 过滤出以bash结尾的行
grep "bash"$ /etc/passwd	# 过滤出不包含nologin的行
grep -v "nologin" /etc/passwd				# 过滤出非注释的行
grep -v ^# /root/.bashrc				# 过滤出非注释的行并且该行不是空行
grep -v ^# /root/.bashrc | grep -v ^$	# 统计匹配到的行数
grep -c "root" /etc/passwd	# 过滤出etc目录中包含root关键字的所有文件名
grep -lr "root" /etc			
cut 命令
  • 描述:从文件的每一行剪切字节、字符和字段并写到文件或标准输出(不指定文件)。
  • 语法:
    • -d "字符": 指定字段的分隔符,默认的字段分隔符为“TAB”
    • -f 数字: 指定截取第几段
    • -c "字符": 截取指定的字符
    • --out-delimiter="字段分隔符":指定输出内容使的字段分割符;
# 以":"分割每行,截取第1段
cat /etc/passwd | cut -d ":" -f 1		
# 以":"分割每行,截取第1段和第3段
cat /etc/passwd | cut -d ":" -f 1,3		
# 以":"分割每行,截取第1段和第3段,每段之间使用"==>"做分隔
cat /etc/passwd | cut -d ":" -f 1,3 --output-delimiter="-->"
# 以":"分割每行,截取1,3,5段并以第三段按数字排序
cat passwd | cut -d ":" -f 1,3,5 | sort -t ":" -k 2 -n# 截取当前操作系统的ip地址 ->  192.168.10.5/24
ip addr | grep -w "inet" | grep "ens33" | tr -s ' ' | cut -d ' ' -f 3
tr 命令
  • 描述:用于替换字符()或将连续的字符变成一个
  • 语法:tr [选项] "字符" | tr ""原字符 "目标字符"
    • -s: 指定将哪个连续的字符变成一个
    • -d:删除指定的字符
ip addr | tr -s ' ' 	#	将标准输出中的连续的空格 替换成 一个空格,即'        ' -> ' ' 
5、文件加密
file 命令
  • 描述:显示文件的类型
  • 语法:file 文件
md5sum 命令
  • 描述:计算和校验文件的md5值
  • 语法:md5sum 文件

md5是一种被广泛使用的密码散列函数,可以产生出一个128位(16字节)的散列值(哈希值),用于确保信息传输完整一致。

sha256sum 命令
  • 描述:计算和校验文件的md5值
  • 语法:md5sum 文件

sha256算法也是一种密码散列函数,对于任意长度的消息,SHA256都会产生一个256bit长的散列值(哈希值),用于确保信息传输完整一致。SHA256(⼜称SHA2)的安全性最⾼,但是耗时要⽐其他两种多很多,md5相对来说比较容易碰撞,安全性没这么高

diff 命令
  • 描述:比较文件的差异,常用于文本文件
  • 语法:diff 文件1 文件2
diff num1 num2		# 比较 num1和num2 之间的差异 num1:12345,num2:12545

ln 命令
  • 描述:创建文件的软硬连接,默认创建硬链接(不加参数-s)
  • 语法:ln [选项] 文件|目录 连接
    • -s 创建软连接
# 创建anaconda-ks.cfg 的软连接	testAn.cfg
ln -s /root/anaconda-ks.cfg /opt/testAn.cfg

文件系统中的每个文件均有一个索引节点即inode与其相关联。

inode包含有关文件的基本信息:其权限、时间戳以及指向存储在该文件中数据的指针。当创建新文件时,文件系统中未使用的inode将分配给该文件,并向该文件所在目录添加一个条目,将文件名映射至inode中。

软链接 (symbolic link)

  • 软链接是以路径的形式存在(指向的是原文件的路径),类似于Windows中的快捷方式
  • 软链接可以跨文件系统 ,硬链接不可以
  • 软链接可以对一个不存在的文件名进行链接
  • 软链接可以对目录进行链接
  • 软连接的文件有自己的inode,跟原文件不一样
  • 删除软链接并不影响被指向的原文件,但若被指向的原文件被删除,则相关软连接就变成了死链接。

硬链接 (hard link)

  • 硬链接是以文件副本的形式存在,不占用实际空间
  • 不允许给目录创建硬链接
  • 硬链接只有在同一个文件系统中才能创建
  • 硬链接的文件的inode跟原文件一样
  • 由于硬链接是有着相同 inode 号,仅文件名不同的文件,因此,删除一个硬链接文件并不影响其他有相同 inode 号的文件。

注意:ln命令会保持每一个链接文件的同步性。不论改动了哪一处,其它的文件都会发生相同的变化

6、其他
env
  • 描述:显示系统中的环境变量
  • 语法:env
env				# 显示系统中的环境变量
!$ 参数
  • 描述:使用上一条命令的最后一个参数
  • 语法:命令 !$
# 此命令的最后一个参数是"/etc/sysconfig/network-scripts/"
ls /etc/sysconfig/network-scripts/	# 此命令中的"!$"(上一条命令的最后一个参数) -> /etc/sysconfig/network-scipts/
cat !$
| 管道符
  • 描述:每一个命令都有输入输出,把前一个命令的输出当做第二个命令的输入,一个命令的输入可以从文件中读取,也可以从前一个命令的结果中读取。
cat -n /etc/passwd | head -n 5

重定向符号与文件描述符

文件描述符是一个非负整数,在打开现存文件或新建文件时,内核会返回一个文件描述符,读写文件也需要使用文件描述符来访问文件。

文件描述符

描述

映射关系

0

标准输入

/dev/stdin -> /proc/self/fd/0

1

标准正确输出

/dev/stdout -> /proc/self/fd/1

2

标准错误输出

/dev/stderr -> /proc/self/fd/2

重定向符号

描述

>

输出重定向,将内容覆盖至文件中

>>

输出重定向,将内容追加至文件中

<

输入重定向,将文件中的内容覆盖至标准输出

<<

输入重定向,将文件中的内容追加至标准输出

&

重定向绑定符号

> 将原本要打印到屏幕上的内容覆盖输出到文件中,文件中原来的内容会被覆盖,如果文件不存在,则会自动创建。

>> 将原本要打印到屏幕上的内容追加输入文件中,不会覆盖文件中原有的内容,在原有内容后面行追加,如果文件不存在,则会自动创建。

# 重定向输出符号
echo "welcome to lemon's page" > welcom.txt	  # 将内容写入指定文件中,覆盖原有内容
echo "welcome to lemon's page" >> welcome.txt # 将内容追加至文件末尾# 标准错误输出,将错误信息写入文件中
adsfadsf 2>> 2.txt 	
asdfasdf &>> 2.txt  # 标准正确输出,将显示的信息追加至文件中
ls >> 2.txt
ls 1>> 2.txt
ls &>> 2.txt		cat 的第二种用法
cat > 2.txt << EOF	# << EOF 起始字符
>丈夫只手把吴钩	
>意气高于百尺楼
>一万年来谁著史
>三千里外欲封侯
>EOF				# >EOF 终止字符
$PATH 环境变量

更改$PATH的环境变量

  • 更改全局变量:修改全局配置文件 /etc/profile 对所有用户生效
  • 更改局部变量: 修改局部配置文件 /home/username/.bash_profile 只对特定用户生效
echo $PATH					# 显示系统的环境变量# 修改全局环境变量
vim /etc/profile			# 编辑全局配置文件
PATH=$PATH:/mnt				# 将/mnt/目录添加到环境变量中

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/192505.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

DAY53 1143.最长公共子序列 + 1035.不相交的线 + 53. 最大子序和

1143.最长公共子序列 题目要求&#xff1a;给定两个字符串 text1 和 text2&#xff0c;返回这两个字符串的最长公共子序列的长度。 一个字符串的 子序列 是指这样一个新的字符串&#xff1a;它是由原字符串在不改变字符的相对顺序的情况下删除某些字符&#xff08;也可以不删…

MHA的那些事儿

什么是MHA&#xff1f; masterhight availability&#xff1a;基于主库的高可用环境下&#xff0c;主从复制和故障切换 主从的架构 MHA至少要一主两从 出现的目的&#xff1a;解决MySQL的单点故障问题。一旦主库崩溃&#xff0c;MHA可以在0-30s内自动完成故障切换 MHA使用的…

redis-5.0.8主从集群搭建、不重启修改配置文件

一、环境准备 192.168.5.100 redis-01 192.168.5.101 redis-02 192.168.5.102 redis-03 关闭防火墙、能够通网 二、安装redis [rootlocalhost ~]# wget http://download.redis.io/releases/redis-5.0.8.tar.gz [rootlocalhost ~]# tar xf redis-5.0.8.tar.gz -C /usr/loca…

爆款元服务!教你如何设计高使用率卡片

元服务的概念相信大家已经在 HDC 2023 上有了很详细的了解&#xff0c;更轻便的开发方式&#xff0c;让开发者跃跃欲试。目前也已经有很多开发者开发出了一些爆款元服务&#xff0c;那么如何让你的元服务拥有更高的传播范围、更高的用户使用率和更多的用户触点呢&#xff1f;设…

CPS-8910

PCI Express&#xff0c;有线开关设备 CPS-8910专为在PXI平台或软件无线电设备上实现大型多输入多输出(MIMO)扩展配置和系统控制而设计。 CPS-8910提供了2个PCI Express上行端口和8个下行端口来实现无缝系统扩展。 下行端口可以连接软件无线电可重配置设备等外部设备&#xff0…

「Verilog学习笔记」优先编码器Ⅰ

专栏前言 本专栏的内容主要是记录本人学习Verilog过程中的一些知识点&#xff0c;刷题网站用的是牛客网 分析 分析编码器的功能表&#xff1a; 当使能El1时&#xff0c;编码器工作&#xff1a;而当E10时&#xff0c;禁止编码器工作&#xff0c;此时不论8个输入端为何种状态&…

LLM(四)| Chinese-LLaMA-Alpaca:包含中文 LLaMA 模型和经过指令微调的 Alpaca 大型模型

论文题目&#xff1a;《EFFICIENT AND EFFECTIVE TEXT ENCODING FOR CHINESE LL AMA AND ALPACA》 ​论文地址&#xff1a;https://arxiv.org/pdf/2304.08177v1.pdf Github地址&#xff1a;https://github.com/ymcui/Chinese-LLaMA-Alpaca 一、项目介绍 通过在原有的LLaMA词…

10-18 请求与相应1

前后台联调 前台通过一个表单, action写的servlet绑定的url,提交表单,请求我们servlet的doGet()/ doPost()方法 问题: 1.后台怎么获取前端的提交,请求的数据?底层:TCP通信,socket的得到输入流,读取数据 2.后台处理请求之后,怎么把结果给到前端?底层:TCP通信,socket的得到输入…

交换机堆叠 配置(H3C)

堆叠用来干什么&#xff1f; 一台交换机网口有限&#xff0c;无法满足网络需求&#xff1b; 无法达到网络要求&#xff0c;为了扩展核心设备的转发要求&#xff0c;不改变原来网络&#xff0c; 可以使用新交换机和原来交换机组成IRF。 配合聚合可以达到备用作用&#xff0c;防…

Programming Abstractions in C阅读笔记:p196

《Programming Abstractions in C》学习第63天&#xff0c;p196总结。涉及到编程之外的知识&#xff0c;依然是读起来很费劲&#xff0c;需要了解作者在书中提到的人物(Edouard Lucas)、地点(Benares)、神话传说(Brahma)等等。虽然深知自己做不到对人文知识&#xff0c;历史知识…

2023最新electron 进程间通讯的几种方法

数据传递&#xff08;旧&#xff09; 渲染进程发数据到主进程 // 按钮事件 const handleWebRootPathClick () > {ipcRenderer.send(open_dir) }// main.ts中接收 ipcMain.on(open_dir, () > {console.log(recv ok) }) 主进程发数据到渲染进程 // main.ts中发送数据 …

新版软考高项试题分析精选(三)

请点击↑关注、收藏&#xff0c;本博客免费为你获取精彩知识分享&#xff01;有惊喜哟&#xff01;&#xff01; 1、项目整体管理要综合考虑项目各个相关过程&#xff0c;围绕整体管理特点&#xff0c;以下说法中&#xff0c;&#xff08; &#xff09;是不正确的。 A.项目的…

AXglyph——轻量级科研绘图软件

今天博主将推荐一款简约却不简单的制图软件——axglyph。 AxGlyph是一款十分优秀的矢量绘图软件&#xff0c;官方版界面简洁&#xff0c;功能强大&#xff0c;支持自由矢量画笔、混合矢量路径和矢量漫水填充。支持自由定义的磁力点阵&#xff0c;支持插图编号及引用管理&#…

城市内涝对策,万宾科技内涝积水监测仪使用效果

随着城市化进程的加速&#xff0c;城市道路积水问题明显越来越多&#xff0c;给人们的出行和生活带来更多的不便。内涝积水监测仪作为高科技产品能够实时监测道路积水情况&#xff0c;为城市排水系统的管理和维护提供重要的帮助。 在城市生命线的基础设施规划之中&#xff0c;地…

【SpringBoot3+Vue3】二【实战篇】-后端

目录 一、环境搭建 1、数据库脚本 2、pom 3、yml 4、通过mybatis-X生成实体pojo等 4.1 Article 4.2 Category 4.3 User 5、 Mapper 5.1 ArticleMapper 5.2 CategoryMapper 5.3 UserMapper 6、service 6.1 ArticleService 6.2 CategoryService 6.3 UserService …

降低城市内涝风险,万宾科技内涝积水监测仪的作用

频繁的内涝会削弱和损坏城市的关键基础设施&#xff0c;包括道路、桥梁和公用设施。城市内涝风险降低可以减少交通中断事件&#xff0c;也可以保护居民安全并降低路面维修等成本&#xff0c;进一步确保城市基本服务继续发挥作用。对城市可持续发展来讲有效减少内涝的风险是重要…

Ubuntu环境下以编译源码的方式安装Vim

目录 1. Ubuntu环境 2. 下载编译vim 2.1 效果截图 3. 配置环境变量 1. Ubuntu环境 Linux chris-166 6.2.0-36-generic #37~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC Mon Oct 9 15:34:04 UTC 2 x86_64 x86_64 x86_64 GNU/Linux 2. 下载编译vim // 源码下载 chris_166chris-16…

职场新人,如何提高自我管理能力?

作为职场新人&#xff0c;一定要学会个人管理。 入职三个月多&#xff0c;我总结了一个经验&#xff0c;作为职场新人&#xff0c;我越加觉得自我管理重要性。 在职场一个普遍的现象&#xff1a;在领导眼里&#xff0c;同样的问题在老职员身上不是问题&#xff0c;在新员工身…

灰度图处理方法

做深度学习项目图像处理的时候常常涉及到灰度图处理&#xff0c;这里对自己处理灰度图的方式做一个记录&#xff0c;后续有更新的话会在此更新 一&#xff0c;多维数组可视化 将多维数组可视化为灰度图 img_gray Image.fromarray(img, modeL) # 实现array到image的转换,m…

Elasticsearch 作为 GenAI 缓存层

作者&#xff1a;JEFF VESTAL&#xff0c;BAHA AZARMI 探索如何将 Elasticsearch 集成为缓存层&#xff0c;通过降低 token 成本和响应时间来优化生成式 AI 性能&#xff0c;这已通过实际测试和实际实施进行了证明。 随着生成式人工智能 (GenAI) 不断革新从客户服务到数据分析…