广告
返回顶部
首页 > 资讯 > 操作系统 >Linux中如何使用shell下的特殊字符
  • 201
分享到

Linux中如何使用shell下的特殊字符

2023-06-17 00:06:05 201人浏览 安东尼
摘要

这篇文章给大家分享的是有关linux中如何使用shell下的特殊字符的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。一、快速在目录之间切换。在Linux操作系统的文本模式下,在目录之间进行切换都需要通过命令来完成。

这篇文章给大家分享的是有关linux中如何使用shell下的特殊字符的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

一、快速在目录之间切换。

在Linux操作系统的文本模式下,在目录之间进行切换都需要通过命令来完成。显然这没有图形化界面下使用鼠标点点那么方便。但是,shell中仍然提供了一些特殊的字符。在这些字符的帮助下,系统管理员可以轻松的在不同的目录之间进行切换。

如现在系统管理员想从任何目录中回到用户的主目录下,除了按原路返回外,还有其他更快的方法吗?其实,要回到用户的主目录下,有一个很便捷的方式,就是通过一个特殊的字符~来完成。通常情况下,当管理员创建某个用户后,在系统的/home目录中会以这个用户的名字建立一个文件夹。这个文件夹所在的目录就是用户的主目录。当用户不知道自己所处那个目录,而需要迅速回到自己的主目录时,可以使用这个命令来实现:cd ~。也就是说,特殊符号~在操作系统中代表的是用户的主目录。由于不同用户的主目录不同,利用这个主目录可以快速的回到自己的主目录下面。

在目录切换过程中,还有两个比较重要的特殊字符,分别为.与..符号。其中“.”表示当前目录。这个符号很重要,在很多地方都需要用到。如在定义PATH环境变量的时候,在路经的***需要加上这个.号,这表示当前目录。另外,如果系统管理员想运行当前目录下的一个脚本文件,如setup.sh。则可以不采用绝对路径,而直接使用./setup.sh。其中这个.符号就代表当前目录。在cd命令中也可以使用.号,如cd ./setup,就表示进入到当前目录的下一个子目录setpup下面。所以说这个特殊符号..(英文状态下的点号)在切换目录的时候非常有用。另外一个特殊的字符就是“..”(英文状态下的双点号)在系统中表示的是上一级目录。如故管理员利用cd命令定义到一个目录后,又想回到上一级目录中,则可以使用cd ..命令来实现。注意cd命令与点号之间要有空格。

系统管理员若能够熟练应用这些特殊字符,特别是表示用户主目录的~符号,能够帮助管理员迅速切换到自己想要的目录下。如在Linux客户端中,往往用户邮箱的文件夹是保存在用户主目录下面的。如用户可能采用的是thunderbird的邮件客户端。采用这个客户端有一个弊端,即当Linux系统非法关机后,开会在邮件的目录中产生一个lock的文件。客户端就不能够打开。只是系统管理员需要切换到用户主目录下的邮件文件夹中,删除这lock文件。此时比较简单的方法,就是直接使用~符号定位到用户的主目录下,然后再进入到邮件目录中,找到这个文件并删除。这笔一级一级的进入要快的多。

二、将执行结果保存到文件中。

用户在日常的操作中,可能需要将某些命令的执行结果保存到文件中。如需要将一些程序的运行结果保存到日至文件中等等。笔者现在以一个简单的例子为例。Ps命令是用来显示当前系统运行程序的命令。如在命令行中,输入ps命令可以显示当前系统运行的所有程序(注意程序跟进程是两个不同的经验)。其中会显示应用程序的进程号、终端信息、运行时间以及程序名字等等。现在管理员如果要将这些信息保存到一个特定的文件中,该如何实现呢?

此时系统管理员可以在命令后面采用一个特殊的字符>,如ps > ps.txt的方式,将命令ps的执行结果保存到文本文件ps.txt 中。如果目标文件不存在的话,则系统会创建文件并保存信息。如果目标文件存在的话,则系统会覆盖原先的文件。所以,在使用>这个特殊符号来创建文件的时候,需要特别的注意。因为目标文件存在,则系统不会给用户任何的提示信息,就把目标文件删除并新建同名的文件。为此一不小心就可能会造成文件的丢失。不过其还有一个双胞胎的兄弟,即>>符号。这个特殊符号跟>符号类似,也是将执行结果保存到一个文件中。不过这个符号与>符号有一个很大的不同。如果目标文件已经存在的话,两个符号的执行效果是不同的。如果采用的是>符号的话,则系统会自动覆盖它。而如果采用的是>>符号的话,在系统不会覆盖已经存在的目标文件,而只是在这个目标文件中追加相关地记录。如果目标文件不存在的话,则仍然会自动创建目标文件。

由于>>符号不会自动覆盖目标文件,只是在目标文件中追加记录。为此这个符号还有其他一些特殊的用途,如可以用来合并不同的文件。如现在有连个文件listjpg.txt与listgif.txt。在这个两个文件中主要保存着jpg与gif的图片名字。现在用户想将这个两个文件合并,或者说想将listjpg.txt中的记录追加到listgif.txt文件中。此时该如何处理呢?利用命令cat listjpg.txt >> listgif.txt就可以实现这个功能了。这个命令的意思是,先利用cat命令将文件listjpg.txt的内容读取出来然后追加到listgif.txt文件中。执行了这个命令后,就会将两个文件合并。不过原先的文件仍然存在。如果不需要的话,就需要手工的删除它。

由于这两个特殊符号功能类似,但是实现细节上有所差异。为此系统管理员需要掌握其中的差异,并在实际工作中选择合适的处理方式。如在一些安装程序中,需要将安装过程中的信息保存在日志文件中。但是在下一次重新安装的过程中,系统管理员可能喜欢先将原先的日志删除。因为这会增加阅读量。此时就是采用>这个特殊符号来实现比较合理,因为其会自动删除日志文件。

三、将程序放在后台运行。

有些时候,系统管理员可能希望某些程序在系统后台运行。如果将Linux操作系统当作服务器来管理的话,讲一些长时间运行的程序放在后台运行是一种很常见的手段。如现在管理员利用while循环来实现一个功能。每5分钟来判断一下某个应用系统是否有产生错误的日志文件。如果有的话要马山将这个错误日志文件发送给系统管理员。写完这个脚本程序之后,***的方式就是将这个脚本程序放置在后台运行。因为这个程序需要长时间运行,如果在前台运行的话,可能会对其他程序产生干扰。而且也容易被误关闭。所以,放在后台执行反而更加合理。那么在Linux操作系统中是如何将脚本程序防止在后台运行的呢?此时也需要用到另外一个特殊字符&。如这个脚本程序的名字为errorlog.sh。则管理员只需要运行命令errorlog.sh &,系统就会将这个程序放置在后台运行。

四、解释特殊字符的转义字符。

在微软操作系统中,某些字符是不能够用来做文件名的。如*这个米字符号,其是用来做通配符用的,不能够在文件名或者目录名中出现。但是在Linux操作系统中没有这方面的限制。如test*.txt在Linux操作系统中是一个合法的名字。难道*符号在Linux操作系统中不做通配符使用吗?其实,在Linux操作系统中这个*符号也有特殊的含义,其也是代码通配符。如使用ls text*命令,可以列出所有已text开头的文件或者目录的名字。那么为什么在Linux操作系统中还可以利用这个*米字符号来作为文件名呢?这都是转义字符\在其作用。

如现在用户想在文件名字中加入一个*米字符,则可以使用命令vi text\*.txt来实现。在这个通配符*米字符号前面加入一个转移字符\,就告诉系统要将这个*字符当作普通字符来对待。其实这个转义字符的重要作用还是体现在文件的删除上面。如现在某个目录下有如下几个文件,chap*.txt,chap1.txt,chap2.txt。其中chap*表示一本书的目录,而其他的表示这个本书的各章内容。如果现在系统管理员想把目录文件删除了,采用了rm chap*.txt命令,还有什么后果呢?此时系统会把所有的以chap开头的文件删除。也就是说,不光光是目录文件,章节的内容文件也被删除了。因为此时操作系统是将这个*符号当作通配符来对待。如果要删除目录文件在,则正确的命令应该这么写:rm chap\*.txt。这个命令就是告诉系统这个*符号为普通的符号,而不是通配符。此时系统就会将这个目录文件删除了,而不会影响到其他文件。

虽然说在Linux操作系统中通过转义字符的方法允许用户采用一些特殊的字符来为文件命名。但是出于以后管理的方便,笔者还是建议大家不要采用特殊符号来命名。否则一不小心就会发生不可挽回的损失。如上面的案例中,将*通配符当作文件名字的话,那么在删除时就很容易将相关的文件全部删除。

感谢各位的阅读!关于“Linux中如何使用shell下的特殊字符”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

--结束END--

本文标题: Linux中如何使用shell下的特殊字符

本文链接: https://www.lsjlt.com/news/286737.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Linux中如何使用shell下的特殊字符
    这篇文章给大家分享的是有关Linux中如何使用shell下的特殊字符的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。一、快速在目录之间切换。在Linux操作系统的文本模式下,在目录之间进行切换都需要通过命令来完成。...
    99+
    2023-06-17
  • 如何在Shell中使用特殊字符
    这期内容当中小编将会给大家带来有关如何在Shell中使用特殊字符,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。1、;分号连续运行命令# ifdown eth0;ifup et...
    99+
    2023-06-09
  • linux shell中的特殊字符有哪些
    这篇文章主要介绍“linux shell中的特殊字符有哪些”,在日常操作中,相信很多人在linux shell中的特殊字符有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”linux shell中的特殊字符...
    99+
    2023-06-16
  • linux Shell中特殊字符的用法有哪些
    这篇文章给大家分享的是有关linux Shell中特殊字符的用法有哪些的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。特殊符号在shell中常用的特殊符号罗列如下:# ; ;; . , / \\ 'stri...
    99+
    2023-06-16
  • 如何理解Linux Shell中的特殊符号
    本篇内容主要讲解“如何理解Linux Shell中的特殊符号”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何理解Linux Shell中的特殊符号”吧!这些特殊符号罗列出来大致如下:代码如下:...
    99+
    2023-06-09
  • Shell中特殊字符的用法总结大全
    前言 众所周知shell既是类Unix操作系统的命令解析器,用于解释执行用户输入的一连串命令,它类似于DOS下的command和后来Windows的cmd.exe。同时shell也是一种程序设计语言。作为命...
    99+
    2022-06-04
    特殊字符 大全 Shell
  • Linux下如何删除乱码或特殊字符文件
    这篇文章给大家分享的是有关Linux下如何删除乱码或特殊字符文件的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。今天遇到一个问题,一个文件名是“-MXV9.log”,直接用rm删除的时候就报错,如下:[localh...
    99+
    2023-06-05
  • shell脚本中特殊字符的作用是什么
    shell脚本中特殊字符的作用是什么,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。1. #注释作用, #! 除外此外, 在参数替换 echo ${PATH#*:...
    99+
    2023-06-09
  • linux shell中的比较符号与特殊符号介绍
    shell字符串比较、判断是否为数字 二元比较操作符,比较变量或者比较数字。注意数字与字符串的区别。 整数比较 -eq 等于,如:if [ "$a" -eq "$b" ] -ne 不等于,如:if [ "$...
    99+
    2022-06-04
    符号 特殊符号 linux
  • python3如何去除字符串中的特殊字符
    在Python中用replace()函数操作指定字符 常用字符unicode的编码范围: 数字:\u0030-\u0039 汉字:\u4e00-\u9fa5 大写字母:\u0041-...
    99+
    2023-05-17
    python3去除特殊字符 python处理字符串
  • Shell脚本中的特殊字符分别有哪些作用
    本篇内容主要讲解“Shell脚本中的特殊字符分别有哪些作用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Shell脚本中的特殊字符分别有哪些作用”吧!Shell中的特殊字符有 $ 美元符 2、\...
    99+
    2023-06-09
  • php中如何转义特殊字符
    本篇内容主要讲解“php中如何转义特殊字符”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“php中如何转义特殊字符”吧!反斜线(\)在PHP中,反斜线()是用来转义特殊字符的最常见的字符。当我们需...
    99+
    2023-07-05
  • linux中的特殊字符及含义是什么
    这篇文章主要讲解了“linux中的特殊字符及含义是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“linux中的特殊字符及含义是什么”吧! ...
    99+
    2023-04-20
    linux
  • shell脚本中28个特殊字符的作用简明总结
    1. #注释作用, #! 除外此外, 在参数替换 echo ${PATH#*:} 这里不表示注释, 数制转换, 不表示注释 echo $((2#101011)) 2. ; 命令行分隔符, 可以在一行中写多个...
    99+
    2022-06-04
    简明 脚本 特殊字符
  • Linux下删除乱码或特殊字符文件的方法讲解
    由于编码原因,在linux服务器上上传、创建中文文件或目录时,会产生乱码,如果想删除它,用rm命令是删除不了的,这种情况下,用find命令可以删除乱码的文件或目录。 在linux文件系统中,每个文件都有一个i节点号,可以...
    99+
    2022-06-04
    linux删除乱码文件 linux下删除乱码或特殊字符文件的方法讲解
  • Golang中如何转义常见的特殊字符
    在Golang语言中,字符串是一种重要的数据类型,因为它们被广泛用于数据的存储、传输和处理。但是,在处理字符串的时候,经常会遇到需要转义特殊字符的情况。这篇文章将介绍Golang中如何转义常见的特殊字符。转义字符在Golang中,转义字符以...
    99+
    2023-05-14
    Golang go语言 转义字符
  • Java如何利用StringBuffer替换特殊字符
    小编给大家分享一下Java如何利用StringBuffer替换特殊字符,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!为保证学生输入的 Java 文件名合格,将利用...
    99+
    2023-06-14
  • Shell脚本中的特殊字符(美元符、反斜杠、引号等)作用介绍
    Shell中的特殊字符有 1、$ 美元符 2、 反斜杠 3、` 反引号 4、" 双引号 5、< ,>;,*,?,[,] 下面我一一举列说明 一、$符号 1、echo $...
    99+
    2022-06-04
    斜杠 引号 脚本
  • Linux下怎么处理包含空格和特殊字符的文件名
    这篇文章主要讲解了“Linux下怎么处理包含空格和特殊字符的文件名”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Linux下怎么处理包含空格和特殊字符的文件名”吧!我们经常会看到文件名和文件...
    99+
    2023-06-16
  • 如何进行MYSQL特殊字符的处理
    这篇文章给大家介绍如何进行MYSQL特殊字符的处理,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。单引号,以及行尾的斜杠引起的困惑:这一次的问题,我们直接从实际的工作中说起:工作内容简介...
    99+
    2022-10-19
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作