linux打印服务叹号,linux中如何通过echo输出!(叹号)? -bash: !: event not found
需求描述:
今天在做通过echo结合passwd给用户改密码的过程中,出现无法修改的错误.
错误如下:
[root@testvm ~]# useradd mytest
[root@testvm ~]# echo "my@test!" | passwd --stdin mytest
-bash: !": event not found
错误分析:
经过查找该命令发现叹号!在linux中有特殊的定义,可以用来执行历史的命令或者当做逻辑否定等方式来使用,所以呢,叹号是一个特殊的字符,想要将字符进行当做普通字符来使用,必须进行转义.
问题处理:
1.通过转义字符对!号进行转义
[root@testvm ~]# echo "my@test\!"
my@test\!
备注:发现这样的输出里面就多了\.所以,这个方法不对.
2.echo后面使用单引号输出
[root@testvm ~]# echo 'my@test!'
my@test!
[root@testvm ~]# echo '$my@test! \ # %'
$my@test! \ # %
备注:如果使用单引号,那么就会原样的输出字符串,不进行转义,不取变量值
3.再次通过echo和passwd修改用户密码
[root@testvm ~]# echo 'my@test!' | passwd --stdin mytest
Changing password for user mytest.
passwd: all authentication tokens updated successfully.
[root@testvm ~]# su - mytest
[mytest@testvm ~]$ su - mytest
Password:
[mytest@testvm ~]$
备注:这样就可以在密码中包括!这个符号了.
4.经过测试发现,如果使用双引号输出字符最后一位是叹号!会报错,如果后面有空格就不会报错
[root@testvm ~]# echo "my@test! " #后面有空格,就能够输出叹号,所以如果叹号是最后一位是要接事件event的,但是这样密码中也有空格了.
my@test!
[root@testvm ~]# echo "my@test!"
-bash: !": event not found
5.经过测试,echo后面直接接字符就可以即不将其放入到单引号也不放在双引号中
[root@testvm ~]# echo my@test! | passwd --stdin mytest
Changing password for user mytest.
passwd: all authentication tokens updated successfully.
[root@testvm ~]# su - mytest
[mytest@testvm ~]$ su - mytest
Password:
[mytest@testvm ~]$
备注:同样达到一样的效果,这里没有使用单引号,也没有使用双引号.
文档创建时间:2018年7月2日13:28:20
文档修改1:增加4这个测试,使用双引号,!号后面加空格可以输出,但是密码不符合预期的要求. 时间:2018年7月2日13:35:08
文档修改2:增加5的内容,echo后面不使用单引号,也不使用双引号进行叹号的输出. 时间:2018年7月2日13:43:44
(转)linux 中使用ls指定输出时间格式
linux 中使用ls指定输出时间格式 原文:http://blog.csdn.net/chaofanwei/article/details/13018753 ls -l --time-style=x ...
如何在 Linux 中查看进程占用的端口号【转】
对于 Linux 系统管理员来说,清楚某个服务是否正确地绑定或监听某个端口,是至关重要的.如果你需要处理端口相关的问题,这篇文章可能会对你有用. 端口是 Linux 系统上特定进程之间逻辑连接的标识, ...
Myeclipse中导入新项目报叹号
Myeclipse中导入新项目报红色叹号 原因是导入项目中,有的jar路径不对, 在上图中,先把报错的jar移除,之后将JRE开头的那个library移除,最后点击add Library,选择jre. ...
linux中的设备名称和设备号
看赵炯博士的已经两三周了,从今天起开始将一些个人总结和感悟分小标题写出来,聊作记忆以供后来查看.在linux0.11源码的 /linux/boot/bo ...
Linux中的设备文件与设备号
设备文件与设备号 在Linux下,一切皆文件,设备也不例外,为了管理这些设备,系统为它们各自都编了号,而每个设备号又分为主设备号和次设备号.主设备号用来区分不同类型的设备,而次设备号用来区分同一类 ...
LINUX中printf与echo的区别
(1)首先echo是回显,即代表回车显示,是自带换行的:而printf只是打印出来,没有换行(2)echo只是回显没有变量替换功能:printf是有的举例:假如我们定义好变量a='hello worl ...
linux中sftp默认登录的端口号是多少? sftp通过指定的端口号连接?sftp默认端口号
需求描述: 今天一个同事,遇到个问题,程序连接sftp服务器连接不上,问我端口号是多少, 我想了一下是21还是22,所以就做了测试,发现sftp默认的连接端口号是22, 在此做下记录. 操作过程: 1 ...
Linux中的一些点
前言 本文记录一些日常使用linux的一些点. 系统负载评估 理解Linux系统负荷 查看 ps -ef [root@deployer ~]# ps -ef UID PID PPID C STIME ...
随机推荐
java 环境变量 设置 问题
问题按照网上教程配置好了 tomcat可以用了.但是发现java不能用. 网上教程(类似教程太多了 ,就不 具体说了 http://jingyan.baidu.com/article/f96699b ...
C#简单windows服务
因为做后台比较多,所以经常需要写一些后台服务.一般的流程是先创建一个服务项目,加入代码.然后打包一个安装程序或者直接用dos命令安装服务.下面是详细内容: 1. 创建windows服务项目. ...
iOS 跳转到系统的设置界面-b
在项目中,我们经常会碰到使用位置的需求.当用户设置app不允许使用位置的时候,最好的用户体验就是直接调转到系统的位置设置界面,进行设置. 本人已经测试,在5c iOS8.3系统 和 5s iOS7.1 ...
使用dojo遮罩加载进度。
使用dojox.widget.Standby来实现类似视频缓冲加载时候转圈的效果.
html5时间选择器
HTML5日期输入类型(date) 分享 分享 分享 分享 分享 在很多页面和web应用中都有输入日期和时间的地方,最典型的是订飞机票,火车票,酒店,批萨等网站. 在HTML5之前 ...
Vi编辑器入门
Vi编辑器入门 vi编辑器是所有Unix及Linux系统下标准的编辑器,类似于windows上的记事本! 1.vi的基本概念 基本上vi可以分为三种状态,分别是命令模式(command mode ...
python+selenium自动测试之WebDriver的常用API(基础篇一)
基于python3.6,selenium3.141,详细资料介绍查看官方API文档,点击这里 一.对浏览器操作 driver = webdriver.Chrome() # 初始化chrome driv ...
Extjs 在项目中碰到问题
1.切换tabpanel,新建tab关闭后再新建报错,在火狐下报错 TypeError: el is null el.addCls.apply(el, arguments); 这个我在下一篇文章中 ...
HDU ACM 1856 More is better(并查集)
[题目链接]http://acm.hdu.edu.cn/showproblem.php?pid=1856 [解题思路]给的数据有点大,干脆少开点数组,直接上set存储有朋友的孩子的编号,同时根据编号初 ...
opencv学习之路(11)、图像几何变换
一.图像缩放 #include using namespace cv; void main(){ Mat src=imread("E:// ...
linux打印服务叹号,linux中如何通过echo输出!(叹号)? -bash: !: event not found相关推荐
- linux etc 服务启动脚本,linux 服务脚本启动问题
对于使用了 systemd 的系统,所有的 service 服务都会默认转为 systemd 服务之后再由 systemd 来执行,转换之后,你也可以直接使用 systemd 来执行了(它的用户工具就 ...
- linux添加服务命令行,Linux系统自有服务(上)
系统自有服务(上).md Linux系统自有服务 自有服务,即不需要用户独立去安装的软件的服务,而是当系统安装好之后就可以直接使用的服务(内置) 学习目标 1.了解Linux的7种运行模式 2.了解用 ...
- linux ssh服务状态,查看linux ssh服务信息及运行状态方法
关于ssh服务端配置有不少文章,例如 linux下ssh服务配置,这里仅列举出一些查看ssh服务相关信息的常用命令. 1 安装 apt-get install openssh-server 2 完成后 ...
- linux samba 服务端口号,Linux系统学习 二十、SAMBA服务—介绍、安装、端口
1.简介 网络数据文件共享服务器 可以和Windows中的网上邻居通用 数据共享的方法: Windows中最常用的是"网上邻居".网上邻居使用的文件系统是CIFS(通用互联网文件系 ...
- linux xdm服务无法关闭,Linux远程操控XDM认识和配置
一.引言 我们可以通过telnet.ssh等远程登录Linux服务器,但都是字符界面的.本文介绍了通过XDMCP+XDM来 远程连接Linux服务器上的XFree86 Server,可以在图形环境下远 ...
- linux蓝牙服务关闭,使用linux的hciconfig命令配置蓝牙设备
使用linux的hciconfig命令配置蓝牙设备 发布时间:2020-07-06 16:16:36 来源:亿速云 阅读:146 作者:清晨 栏目:服务器 这篇文章将为大家详细讲解有关使用linux的 ...
- linux 启动服务后台运行,linux后台启动任务
当我们在终端启动服务或者训练模型时,启动命令往往会阻塞自己,即无法在终端继续输入,同时为了保证终端关闭不影响进程中断,需要在后台启动进程. 1. nohup命令 后台启动常用的命令如下: nohup ...
- 设置linux拨号服务端,CentOS Linux上搭建PPPoE服务器及拨号设置
CentOS下PPPoE拨号设置 1.查看并安装拨号软件: [root@RedHat ~]# rpm -qa|grep pppoe [root@redhat ~]# yum -y install rp ...
- linux文件服务有哪些,linux有哪些文件系统?_网站服务器运行维护,linux
linux运维学什么知识?_网站服务器运行维护 linux运维需要学的知识:1.Linux基础知识.linux操作系统:2.bash脚本编程:3.文本处理命令:4.数据库:5.防火墙:6.监控工具:7 ...
最新文章
- 设计模式(19)-Observer Pattern
- javafx 和swing_集成JavaFX和Swing(修订版)
- php 邮件验证_PHP程序来验证电子邮件地址
- plc tcp ip通讯怎么只能连一个客户端_如何远程读取西门子PLC数据?
- 常用linux系统管理工具
- cdc2016年cypher资源_CDC最新Cypher!Ty.简直叼爆
- pcb变压器厂家_大邑县活动板房回收整体回收厂家24小时回收报价-发亿科技
- JS学习3-Js运算符优先级
- 电信保温杯笔记——简洁latex中文简历模板
- 九种NPP\GPP数据集介绍和下载
- linux 一键网克,MaxDos8下载一键Ghost|迈思工作室MaxDos工具箱下载 v8.0 官方版_最火软件站...
- 点击自定义按钮弹出百度商桥对话框
- oem是代工还是贴牌_oem与ODM有什么区别?
- 永恒之蓝ms17_010漏洞利用攻击
- 黑龙江省扶贫电商平台“小康龙江”上线 传输绿色优质农产品
- 从Django的SECTET_KEY到代码执行
- 右侧追击(二)——券商行业
- Android蓝牙开发——经典蓝牙的连接
- 看完知乎上500条答案,我为大家整理了这21个B站学习类UP主
- 遨博协作机器人ROS开发 - 末端工具ROS驱动
热门文章
- ubuntu20.0.4+RTX3090配置深度学习环境的踩坑
- 在Linux中实现自动交互(管道操作符,输入重定向,here document,expect)
- LeetCode题解(0403):青蛙过河(Python)
- centos 7下的redis 环境搭建以及C语言使用hiredis访问redis
- Monkey测试详解
- eclipse java 测试_java-在Eclipse中“未找到JUnit测试”
- 数组操作 reverse()方法
- Kali Linux 2021.1 详细安装教程
- PySpark-prophet预测
- 使用逻辑分析仪抓串口波特率