Linux基础part-4

1、Linux一般文件系统管理类的命令

1. 【cp】复制文件

  1. 只是复制文件数据,元数据是不会复制的,复制的数据存储在单独的磁盘块里面
  2. 格式:cp [选项] 源文件或目录 目标文件或目录
    1. cp 源文件 目标目录[/xxx]
      • ---->目标不存在,复制到指定路径 [重命名]
      • ---->目标存在,覆盖
    1. cp 源文件... 目标目录[/xxx]
      • ---->目标目录必须存在
    1. cp 源目录 目标目录[/xxx]
      • ----->默认不被支持,需要接 -r选项
      • ----->目标目录不存在,会新建目标目录,复制源目录所有文件到目标目录中
  1. 选项:
    • 【-i】:交互提示
    • 【-r】:递归复制目录及其子内容
    • 【-f】:强行复制
    • 【-p】:复制保持源文件的属性信息(权限)
  1. 示例
#1、将文件 file1.txt 复制到当前目录下,命名为 file2.txt:
  cp file1.txt file2.txt
#2、将文件 file1.txt 复制到目标目录 destination/:
  cp file1.txt destination/
#3、复制目录 dir1/ 及其下所有文件和子目录到目标目录 destination/:
  cp -r dir1/ destination/
#4、复制文件 file1.txt 到目标目录 destination/,并保留文件属性:
  cp -p file1.txt destination/
#5、当目标文件已存在时,提示用户是否覆盖:
  cp -i file1.txt destination/
#6、显示详细的复制过程信息:
  cp -v file1.txt destination/

2. 【mv】移动文件

  1. 格式
    • mv [option]...[-T] 源 目标---->目标存在,即覆盖
  1. 选项
    • 【-f】:强行移动----->如果多个源文件,目标不能是文件

----->如果源是目录,将目录里面的东西全部移走,源目录自动删除

----->如果源文件移动到同一目录,目标即重命名。

  1. 示例
#1、将文件 file1.txt 移动到目标目录 destination/:
  mv file1.txt destination/
#2、将文件 file1.txt 移动并重命名为 file2.txt:
  mv file1.txt file2.txt
#3、将目录 dir1/ 移动到目标目录 destination/:
  mv dir1/ destination/
#4、交互式地将文件 file1.txt 移动到目标目录 destination/:
  mv -i file1.txt destination/
#5、显示详细的移动过程信息:
  mv -v file1.txt destination/

3. 【rm】删除文件或目录

  1. 非常危险 不会触发回收站,删除的文件无法恢复
  2. 格式:rm [选项] 文件或目录
  3. 选项
    • 【-i】:交互式删除,删除前提示用户确认。
    • 【-f】:强制删除,不提示用户确认。
    • 【-r】 或 【-R】:递归删除,用于删除目录及其下所有文件和子目录。
    • 【-v】:显示详细信息,显示删除的文件名。
  1. 示例
#1、删除一个文件:
  rm file.txt
#2、删除多个文件:
  rm file1.txt file2.txt file3.txt
#3、递归删除一个目录及其下所有文件和子目录:
  rm -r directory
#4、交互式删除文件:
  rm -i file.txt
#5、强制删除文件,不提示确认:
  rm -f file.txt
#6、显示详细信息,删除文件:
  rm -v file.txt

4. 【ln】创建链接文件

  1. 在文件系统中创建一个文件或目录的链接
  2. 链接文件:链接有软连接硬连接(hard link)之分的,软连接(symbolic link)又叫符号连接
    • ln提供了一种有效的方式来创建文件系统中的链接,使得用户可以方便地访问文件或目录,并在系统中共享文件和目录
  1. 软链接与硬链接的区别
    • 硬链接可认为是文件的克隆,元数据信息一样;
    • 符号链接(软链接)则是系统新建一个链接文件,此文件指向其所要指的文件,相当于Windows下的快捷方式。
    • 软链接可对文件和文件夹,而硬链接仅针对文件。
    • 通常用的还是软连接比较多
    • 硬链接是文件系统中同一文件的另一个名称,而符号链接是指向目标文件的路径
    • 符号链接可以跨越文件系统和文件系统边界,而硬链接只能在同一个文件系统内创建。
    • 删除原始文件不会影响硬链接的可用性,但会使符号链接失效。
    • 符号链接的权限和所有权是指向的文件的权限和所有权,而硬链接的权限和所有权与原始文件相同。
  1. 格式:ln [选项] 源文件 目标文件
  2. 选项
    • -s】 或 【--symbolic】:创建符号链接。
    • 【-f】 或 【--force】:强制执行操作,即使目标文件已经存在。
    • 【-i】 或 【--interactive】:交互式操作,当目标文件已存在时提示用户是否覆盖。
    • 【-v】 或 【--verbose】:显示详细的链接过程信息。
  1. 注意:
    • 如果源文件损坏或位置发生改变,符号链接文件不可用!
    • 一般情况下,符号链接文件的权限没有意义!
    • 删除软链接一定要注意,不要加-r 也注意后面不要补/
  1. 对于一个文件来说,有唯一的索引节点与之对应,而对于一个索引节点号,却可以有多个文件名与之对应。因此,在磁盘上的同一个文件可以通过不同的路径去访问该文件。注意在Linux下是一切皆文件,文件夹、新加的硬盘 ...都可以看着文件来处理的。
  2. 示例
#1、创建硬链接:
  ln file1.txt link1.txt
#2、创建符号链接:
  ln -s file1.txt link1.txt
#3、创建硬链接并覆盖已存在的目标文件:
  ln -f file1.txt link1.txt
#4、创建符号链接并覆盖已存在的目标文件:
  ln -sf file1.txt link1.txt
#5、交互式地创建符号链接:
  ln -si file1.txt link1.txt
#6、显示详细的链接过程信息:
  ln -sv file1.txt link1.txt

5. 【du】所占用磁盘空间

  1. 查看文件或目录所占用的磁盘空间大小(du---->disk use)
  2. 格式:du [选项] [文件或目录]
  3. 选项
    • 【-h】 以人类通俗易懂的方式显示占用磁盘空间字节数
    • 【-s】 只显示目录内所用文件占用磁盘空间的总和
    • 【-c】:显示所有列出的文件或目录的总计大小。
    • 【-a】:显示所有文件和目录的大小,包括隐藏文件和目录。
    • 【--max-depth=N】:限制显示文件或目录的层级深度。
    • 【--exclude=pattern】:排除符合指定模式的文件或目录。
    • 常见指定模式
  1. 示例
#1、查看当前目录下所有文件和目录的大小:
  du
#2、以人类可读的格式显示当前目录下所有文件和目录的大小:
  du -h
#3、显示指定目录的总计大小:
  du -s directory
#4、显示指定目录及其子目录的大小,并以人类可读的格式显示:
  du -h directory
#5、显示指定目录下所有文件和目录的总计大小:
  du -c directory
#6、显示指定目录下所有文件和目录的大小,包括隐藏文件和目录:
  du -a directory
#7、排除指定模式的文件或目录,并显示总计大小:
  du --exclude=*.txt directory
#8、限制显示文件或目录的层级深度:
  du --max-depth=2 directory


#常见的指定模式
#1、排除所有以.log结尾的文件:
  --exclude=*.log
#2、排除所有以temp开头的目录:
  --exclude=temp*/
#3、排除所有以backup开头的目录或文件:
  --exclude=backup*
#4、排除所有以test开头的目录或文件,但不排除test/目录本身:
  --exclude=test --exclude=test*/
#5、排除所有名为file1.txt的文件:
  --exclude=file1.txt
#6、排除所有名为file1或file2的文件:
  --exclude=file[12]
#7、排除所有包含数字的目录:
  --exclude=*[0-9]*/

6. 【time】测量程序执行的时间

  1. 在命令执行完毕后,输出命令的执行时间信息,包括实际时间、用户CPU时间和系统CPU时间。
  2. 格式:time [选项] 命令 [参数]
  3. 时间信息解释
    • real:实际经过的时间(墙上时钟时间),从命令启动到结束的实际时间
    • user:用户CPU时间,命令执行期间CPU为用户进程服务的时间
    • sys:系统CPU时间,命令执行期间CPU为系统内核服务的时间
  1. 常用选项:
    • 【-p】:以可解析的格式输出时间信息。
    • 【-f FORMAT】:自定义输出格式。
    • 【-o FILE】:将时间信息输出到指定文件。
  1. 示例
#1、测量命令的执行时间
  time ls
#2、使用 -p 选项以可解析的格式输出时间信息:
  time -p ls
#3、使用 -f 选项自定义输出格式:
  time -f "real: %e, user: %U, sys: %S" ls
#4、将时间信息输出到文件:
  time -o output.txt ls

2、bash shell特殊功能和用法

1. 【alias】创建命令别名

  1. 为常用命令或命令序列指定一个简短的替代名称
  2. 格式
    • alias [别名[='命令序列']]
    • 无选项:alias——>显示当前所有的别名
  1. 撤销别名unalias alias_name】
  2. 注意事项
    • 别名只在当前shell会话中有效,一旦退出shell,别名就会失效
    • 要使别名永久有效,可以将其添加到shell的配置文件中,家目录下.bashrc.bash_profile
    • 使用别名时应当避免和系统命令重名,以免造成混淆。
    • 别名可以包含任何有效的命令序列,包括管道、重定向、命令替换等。
    • 别名和原命令重合,想使用原命令,使用\即可
  1. 示例
#1、创建别名:
  alias ll='ls -l'
#2、创建包含多个命令的别名:
  alias update='sudo apt update && sudo apt upgrade'
#3、显示当前所有的别名:
  alias
#4、删除别名:
  unalias ll

2. bash shell通配符

  1. (glob通配符)---->针对文件名
  2. 通配符:

*:匹配任意长度的任意字符

?:匹配任意单个字符

[]:匹配指定字符范围内的任意单个字符

[[:upper:]]:大写字母 [A-Z]

[[:lower:]]:小写字母

[[:alpha:]]:所有字母 [a-z] 不区分大小写

[[:digit:]]:所有数字 [0-9]

[[:alnum:]]:字母+数字 [0-Z]

[[:space:]]:空格

[[:punct:]]:标点符号 特殊字符

[^]:匹配指定字符范围外的任意单个字符

3. 其他bash shell的特殊字符

  1. 【;】分号符——可以实现在shell界面同时操作多个命令,注意:命令和命令之间可以没有逻辑关系
  2. 【()】单小括号——(cmd1;cmd2;cmd3) 新开一个子shell顺序执行命令cmd1,cmd2,cmd3, 各命令之间用分号隔开, 最后一个命令后可以没有分号。
  3. 【{}】单大括号——命令展开符号 { cmd1;cmd2;cmd3;} 在当前shell顺序执行命令cmd1,cmd2,cmd3, 各命令之间用分号隔开, 最后一个命令后必须有分号, 第一条命令和左括号之间必须用空格隔开。
  4. 对{}和()而言, 括号中的重定向符只影响该条命令, 而括号外的重定向符影响到括号中的所有命令。(这意味着括号外部的重定向符将应用于括号内的所有命令,而括号内部的重定向符只会影响到括号内部的单个命令。)
  5. 扩展
  1. ()包裹的命令序列将在一个新的子shell中顺序执行。
    • 新的子shell:由于这些命令被放在括号内,因此它们将在一个新的子shell中执行,而不是在当前shell中执行。这意味着,括号内的命令序列将在一个新的进程中运行,与当前shell中的其他命令隔离开来。
    • 这个新的子shell会在当前shell的上下文中创建,并在其中执行命令序列
    • 子shell会继承当前shell的环境变量和状态,并在其中创建新的进程来执行命令。
    • 子shell内的操作对于当前shell来说是“临时”的,执行完成后不会对当前shell的状态造成任何改变。
    • 在子shell中执行命令的目的
      • 隔离环境:可以防止意外修改当前shell的状态或变量,从而保持当前环境的稳定性。
      • 临时变更环境:在子shell中执行命令可以使修改的环境变量仅在子shell内部生效,命令执行完毕后恢复原状态,不会影响到当前shell。
      • 保护当前环境:在执行一些不确定的或可能产生副作用的命令时,可以将其放在子shell中执行,以避免对当前环境造成不可预料的影响。
      • 执行独立操作:有时需要执行一系列命令,但这些命令之间彼此独立,执行顺序不影响结果。
  1. 对于 {} 和 () 而言,括号中的重定向符只影响该条命令,而括号外的重定向符影响到括号中的所有命令。这句话是什么意思?
    • 指的是在Bash shell中使用大括号 {} 和小括号 () 包裹命令时,对于重定向符(如><>>等)的影响范围有所不同。
    1. 括号中的重定向符只影响该条命令:当命令被括号包裹时,括号内部的重定向符只会影响到括号中的单个命令,而不会影响到括号外部的其他命令。这意味着,对于括号内的每个命令,都可以独立地使用重定向符来定向输入和输出。示例:
{ command1 > file1; command2 < file2; command3 >> file3; }
#重定向符 >、<、>> 分别只影响到括号内的 command1、command2 和 command3,
#而不会影响到其他命令。
    1. 括号外的重定向符影响到括号中的所有命令:与括号内的情况相反,如果重定向符位于括号外部,则会影响到括号中的所有命令。这意味着,重定向符将应用于括号内的所有命令,而不仅仅是单个命令。示例:
{ command1; command2; command3; } > output_file
#重定向符 > 位于括号外部,因此它将应用于括号内的所有命令,
#将它们的输出重定向到 output_file 文件中。
  1. 示例
#1、分号符将三个命令分隔开来,依次执行了echo、ls和pwd命令
  echo "Hello"; ls -l; pwd
#2、括号内的三个命令会在一个新的子shell中依次执行
  (echo "Hello"; ls -l; pwd)
#3、大括号内的三个命令会在当前shell中依次执行。
  { echo "Hello"; ls -l; pwd; }

3、I/O重定向

  1. I:input(输入数据流;O:output(输出数据流)
    • 输入重定向【<】——>(覆盖)【<<】——>(追加) 标准输入(键盘),stdin
    • 输出重定向【>】——>(覆盖)【>>】——>(追加) 标准输出(显示器),stdout

标准错误输出(显示器):stderr

    • 如果重定向的目标I/O文件不存在即创建
  1. 重定向操作
    • 【set -C】:禁止I/O 覆盖重定向操作
    • 【set +C】:开启I/O覆盖重定向操作
    1. 强行使用重定向操作 【>|】
      • 语法:command >| 文件名
      • 【>|】操作符可以确保无论目标文件是否存在,都会执行输出重定向
      • 举个例子,假设有一个文件 output.txt,内容为 "Old content",现在希望使用 echo "Hello" 命令将 "Hello" 追加到文件中
        • 如果 output.txt 文件不存在,这条命令就会创建一个新的文件,并将 "Hello" 写入其中
        • 如果 output.txt 文件已经存在,那么 "Hello" 将会被追加到文件的末尾,结果就是文件内容为 "Old contentHello"。
    1. 实现标准输入重定向的符号 【EOF】
      • << EOF EOF 可以生成文件
      • Bash 将会读取从 << EOF 到下一个 EOF 标记之间的文本,并将其作为标准输入输入到命令中,在输入结束后,命令会执行并处理输入的文本内容。
    1. 高级重定向写法
      • 【cmd <<< "string"】
      • 使用 【<<<】符号来进行高级重定向,这种写法称为 here-string
      • 它允许将一个字符串作为标准输入(stdin)传递给命令,而不是从文件或其他来源读取输入。
      • 可以使命令直接读取字符串,而无需创建临时文件或者使用额外的重定向符号
    1. 示例
set -C	# 禁止I/O 覆盖重定向操作
set +C	# 开启I/O 覆盖重定向操作

# 强行使用重定向操作
echo "Hello" >| output.txt	#将 "Hello" 写入到 output.txt 中,如果文件存在则覆盖

# 实现标准输入重定向
1、假设有一个脚本 count_lines.sh,用于统计输入的文本中包含的行数,内容如下:
  wc -l	# 统计输入的文本行数
2、统计一段文本中包含的行数,并将这段文本作为标准输入输入到 count_lines.sh 脚本中
  #使用 << EOF 重定向输入到 count_lines.sh 脚本中
  bash count_lines.sh << EOF
  This is line 1.
  This is line 2.
  This is line 3.
  EOF
3、
cat > output.txt <<EOF
line 1
EOF

# 高级重定向写法
  wc -c <<< "Hello World"  #统计文件中的字节数

# 使用 <<< 符号将字符串 "Hello World" 作为标准输入传递给 grep 命令
  grep "World" <<< "Hello World"	#grep 是文本搜索工具,将匹配到的行输出到标准输出
  1. Linux的特殊设备文件
    • 黑洞 /dev/null 白洞/dev/zero
    1. 黑洞 (/dev/null)
      • 作用:一旦将数据写入到它,数据就会被立即丢弃,消失无踪。同样,从黑洞中读取数据会得到一个空文件。
      • 用途
        • 用于丢弃不需要的输出:当一个程序产生输出但我们不想要保存时,可以将其输出到黑洞,而不会占用磁盘空间。
        • 用于测试目的:有时我们可能需要一个输出流,但实际上不关心这个输出,可以将其输出到黑洞,以免输出对其他操作产生影响。
    1. 白洞 (/dev/zero)
      • 作用:从它读取数据会得到一个连续的流,该流中的每个字节都是二进制零。
      • 用途
        • 用于生成指定大小的空文件:可以将其输出重定向到文件中,以快速生成指定大小的空文件。
        • 用于初始化文件内容:可以将其输出重定向到需要初始化的文件中,将文件填充为零值。
        • 摧毁文件系统中的数据
    1. 示例
command > /dev/null		# 将命令的输出重定向到黑洞,不保存输出
dd if=/dev/zero of=empty_file bs=1M count=1024		# 生成一个大小为1GB的空文件
  1. 【fd】文件描述符(File Descriptor)(不是指令)(windows中通常叫文件句柄)
    1. 是一个与打开文件相关联的整数标识符,是操作系统内核用来标识和操作文件或其他输入/输出资源的一种方式。每个进程在执行时都会有一张文件描述符表,用于跟踪打开的文件和其他I/O资源
    2. 文件描述符的前三个值是预留给标准I/O流
      • 0:标准输入(stdin),通常是指从键盘输入的数据。
      • 1:标准输出(stdout),通常是指向终端的输出。
      • 2:标准错误(stderr),用于错误消息的输出。
    1. 除了这些标准文件描述符外,其他文件描述符通常是由 open()socket()pipe() 等系统调用返回的。每个文件描述符都对应着一个打开的文件、设备或管道等。在使用文件描述符时,通常可以对其进行读取、写入、关闭等操作
    2. 文件描述符和标准I/O流
      • 【>】 【1>】——>正确覆盖输出
      • 【>>】 【1>>】——>正确追加输出
      • 【2>】【2>>】——>错误覆盖或追加输出
      • 【&>】——>混合输出
      • 合并正常输出流和错误输出流 COMMAND > /path/to/somefile 2>&1
    1. 示例
1、打开文件并读取内容
  exec 3< file.txt	# 打开文件并将文件描述符保存到变量fd中
  cat <&3						# 读取文件内容并输出到标准输出
  exec 3<&-					# 关闭文件描述符
2、使用 read() 系统调用读取文件内容
  exec 3< file.txt	# 打开文件并将文件描述符保存到变量fd中
  read -u 3 line	  # 读取文件内容到变量line中
  echo "$line"
  exec 3<&-					# 关闭文件描述符
3、复制文件描述符
  exec 3< file.txt	# 打开文件并将文件描述符保存到变量fd中
  exec 4<&3					# 复制文件描述符3到文件描述符4
  cat <&4						# 读取文件内容并输出到标准输出
  exec 3<&-					# 关闭文件描述符
  exec 4<&-

使用文件描述符 0、1、2 的代码示例
1、使用文件描述符 0(标准输入)读取用户输入:
  echo "Please enter your name:"	# 从标准输入(键盘)读取用户输入,并存储到变量name中
  read name
  echo "Hello, $name!"						# 输出读取到的用户输入
2、使用文件描述符 1(标准输出)输出信息到终端:
  echo 1> "Hello, world!"					# 输出信息到标准输出(终端)
3、使用文件描述符 2(标准错误)输出错误信息到终端:
  cat non_existent_file.txt 2>/dev/null || echo "Error: File not found."
  # 试图访问一个不存在的文件,将会产生一个错误信息

4、echo命令详解

  1. 【echo】:在shell交互式界面产生数据流(用于在终端中打印输出文本
    1. 语法:echo [选项] [字符串]
    2. 选项:
      • 【-n】 阻止自动换行
      • 【-e】 启用特殊字符转义(允许 echo 解释特殊字符序列,并将其转换为相应的控制字符。)
      • 【-E】:禁用特殊字符转义
      • 【\n】 new line 换行且光标移至行首
      • 【\t】 horizontal tab 插入tab;
      • 【--help】:显示帮助信息,列出 echo 命令的使用说明和可用选项。
      • 【--version】:显示版本信息,显示 echo 命令的版本信息。
    1. 示例
#1、输出文本字符串:
  echo "Hello, World!"
#2、输出文本字符串并不换行:
  echo -n "Hello, "
  echo "World!"
#3、使用特殊字符转义输出带颜色的文本:
  echo -e "\e[1;31mError:\e[0m Something went wrong"
#4、输出变量的值:
  name="Alice"
  echo "Hello, $name"
#5、输出特殊字符序列:
  echo -e "This is a \t tab character"

  echo -e "ccc\nddd\nfff" > file1.txt
  cat file1.txt
  1. echo 高级用法
    1. "\033[字符背景颜色;字体颜色m字符串\033[0m"
    2. \033[30m -- \033[37m 设置前景色
    3. \033[40m -- \033[47m 设置背景色

#字符背景颜色范围: 40--47

#字体颜色: 30--37

颜色只是以下控制码中的一种,如下是常见的一些ANSI控制码:

40:黑

41:红

42:绿

43:黄

44:蓝

45:紫

46:深绿

47:白色

30: 黑

31: 红

32: 绿

33: 黄

34: 蓝

35: 紫

36: 深绿

37: 白色

\033[0m 关闭所有属性

\033[1m 设置高亮度

\033[4m 下划线

\033[5m 闪烁

\033[7m 反显

\033[8m 消隐

\033[nA 光标上移n行

\033[nB 光标下移n行

\033[nC 光标右移n列

\033[nD 光标左移n列

\033[x;yH 设置光标位置x行y列

\033[2J 清屏

\033[K 清除从光标到行尾的内容

\033[s 保存光标位置

\033[u 恢复光标位置

\033[?25l 隐藏光标

\033[?25h 显示光标

\033[2J\033[0;0H 清屏且将光标置顶

5、ASCII码

man ascii

补充

  1. ASCII(美国信息交换标准代码)是一种用于计算机和通信设备中的字符编码标准。它定义了128个字符,包括英文字母、数字、标点符号和控制字符,用于表示文本信息。
  2. ASCII码是一种基于7位二进制编码的字符集,每个字符都用一个唯一的7位二进制数值来表示。后来,由于需要更多的字符表示能力,扩展的ASCII码出现了,增加了128个字符,使得ASCII码总共包含了256个字符。
  3. 【man ascii】命令:
    • 查看ASCII码表的手册页,提供了ASCII码的详细说明和使用方法。
  1. ASCII码范围
    • ASCII码共有128个字符,分为控制字符和可打印字符两类。
    • 控制字符包括空格、换行、制表符等,用于控制文本的格式和布局。
    • 可打印字符包括数字、字母、标点符号等,用于显示文本内容。
  1. ASCII码的应用
    • ASCII码是计算机中最基本的字符编码,被广泛应用于计算机系统中的文本处理、通信协议、文件格式等方面。
    • ASCII码可以使计算机识别和处理文本信息,实现文本的输入、输出和处理。
  1. ASCII码的扩展
    • 扩展的ASCII码包含了128个额外的字符,用于表示更多的字符和符号,扩展了ASCII码的表示能力。
    • 扩展的ASCII码常用于特定的应用场景,如国际化字符集、图形字符集等。

6、语言环境

echo $LANG

LANG=zh_CN.UTF-8

补充

  1. 在计算机系统中,语言环境指的是操作系统和应用程序使用的语言设置,包括语言代码、地区代码和字符集等信息。语言环境对于用户界面的显示语言、文本编码和国际化支持等方面都有重要影响。
  2. 【echo $LANG】命令
    • 用于显示当前系统的语言环境设置。
    • 可以查看当前系统的语言环境设置,其中$LANG是一个环境变量,存储了系统的语言环境信息。
  1. 设置语言环境
    • 【LANG=zh_CN.UTF-8】
    • 用于设置系统的语言环境为中文(简体)UTF-8编码。其中,zh_CN.UTF-8表示语言代码为中文(中国)地区代码为UTF-8编码。、
  1. 语言环境变量
    • LANG:指定系统的默认语言环境。
    • LC_ALL:覆盖所有其他LC_变量的值,用于设置系统的整体语言环境。
    • LC_COLLATE:用于设置字符串比较和排序的规则。
    • LC_CTYPE:用于设置字符分类和字符映射的规则。
    • LC_MESSAGES:用于设置消息的语言环境,影响系统提示和错误信息的语言显示。
    • LC_NUMERIC:用于设置数字格式和货币符号的显示规则。
    • LC_TIME:用于设置日期和时间格式的显示规则。
  1. 语言环境设置文件
    • /etc/locale.conf:用于设置系统的默认语言环境,影响所有用户。
    • ~/.bashrc:用于设置当前用户的语言环境变量,仅影响当前用户的会话。
  1. 语言环境的重要性
    • 语言环境设置对于国际化软件、多语言支持和用户体验至关重要。
    • 正确的语言环境设置可以保证系统和应用程序的正常运行,并提供更好的用户体验。

  • 7
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值