unix命令

sed

╄→гoц情女王★ 提交于 2019-11-27 11:46:33
#拿掉单一一个 | 竖杠,采用词首和词尾定位符 sed -e "s|\<\|\>||g" SED手册 1.Introduction Sed(Stream EDitor)为UNIX系统上提供将编辑工作自动化的编辑器,使用者无需直接编辑资料。使用者可利用sed所提供20多种不同的函数参数,组合(解[1])它们完成不同的编辑动作。此外,由於sed都以行为单位编辑文件,故其亦是行编辑器(line editor)。 一般sed最常用在编辑那些需要不断重覆某些编辑动作的文件上,例如将文件中的某个字串替换成另一个字串等等。这些相较於一般UNIX编辑器(交谈式的,如vi、emacs)用手动的方式修改文件, sed用起来较省力。 下面几节将分别介绍: 何时使用sed 何处获得sed sed能做那些编辑动作 sed如何工作 1.1何时使用sed 在修改文件时,如果不断地重覆某些编辑动作,则可用sed自动一次执行这些编辑动作。例如要使received档内1000封电子信件内的发信人属名"Tom"改成"John" ,此时只要在命令列上执行一简单的sed命令就可把档内所有的"Tom"字串替换成"John"。 再者,当文件需要许多不同编辑动作时,则sed一次可执行那些不同的编辑动作。例如sed能一次执行完将文件中所有空白行删除、替换字串、并将使用者输入的文字添加在文件的第六行等等不同的编辑动作。 1

格式化抽象本地地址(实战linux socket编程)

天大地大妈咪最大 提交于 2019-11-27 10:52:43
格式化抽象本地地址 传统AF_UNIX套接口名字的麻烦之一就在于总是调用文件系统对象。这不是必须的,而且也不方便。如果原始的文件系统对象并没有删除,而在bind调用时使用相同的文件名,名字赋值就会失败。 Linux 2.2内核使得为本地套接口创建一个抽象名了成为可能。他的方法就是使得路径名的第一个字节为一个空字节。在路径名中空字节之后的字节才会成为抽象名字的一部分。下面的这个程序是上一个例子程序的修改版本。这个程序采用了一些不同的方法来创建一个抽象的名字。 /***************************************** * af_unix2.c * * AF_UNIXSocket Example * CreateAbstract Named AF_UNIX/AF_LOCAL *******************************************/ #include<stdio.h> #include<stdlib.h> #include<error.h> #include<unistd.h> #include<string.h> #include<sys/types.h> #include<sys/socket.h> #include<sys/stat.h> #include<sys/un.h> /* * Thisfunction

shell 脚本——第四节课 Linux grep命令与正则表达

走远了吗. 提交于 2019-11-27 08:11:17
一、介绍   很多时候,我们可以使用grep来实现找出文件包含制定信息的那些行   grep命令,sed命令,awk命令三个命令为Linux文本处理的三剑客,这次就让我详细介绍一下grep命令。   grep 命令的由来可以追溯到 UNIX 诞生的早期,在 UNIX 系统中,搜索的(patterns)被称为正则表达式(regular expressions),为了要彻底搜索一个文件,有的用户在要搜索的字符串前加上前缀 global(全面的),一旦找到相匹配的内容,用户就像将其输(print)到屏幕上,而将这一系列的操作整合到一起就是 global regular expressions print,而这也就是 grep 命令的全称。 二、grep程序   1、linux下有文本处理三剑客 -- grep sed awk     grep:文本行过滤工具     sed:文本行编辑器(流编辑器)     awk:报告生成器(做文本输出格式化)   2、grep     包含三个命令:grep egrep fgrep,他们是用来进行 行模式(pattern)匹配的     egrep = grep -E //使用扩展的正则表达式进行匹配     fgrep = fast grep //只使用文件通配符进行匹配     *grep默认使用正则表达式进行文本匹配*   3、grep的用法:

UVA400 Unix Is命令 Unix ls

自闭症网瘾萝莉.ら 提交于 2019-11-27 05:43:53
题目描述 输入格式 输出格式 输入 10 tiny 2short4me very_long_file_name shorter size-1 size2 size3 much_longer_name 12345678.123 mid_size_name 12 Weaser Alfalfa Stimey Buckwheat Porky Joe Darla Cotton Butch Froggy Mrs_Crabapple P.D. 19 Mr._French Jody Buffy Sissy Keith Danny Lori Chris Shirley Marsha Jan Cindy Carol Mike Greg Peter Bobby Alice Ruben 输出 ------------------------------------------------------------ 12345678.123 size-1 2short4me size2 mid_size_name size3 much_longer_name tiny shorter very_long_file_name ------------------------------------------------------------ Alfalfa Cotton Joe Porky

Linux netstat命令详解

馋奶兔 提交于 2019-11-27 05:07:52
简介 Netstat 命令用于显示各种网络相关信息,如网络连接,路由表,接口状态 (Interface Statistics),masquerade 连接,多播成员 (Multicast Memberships) 等等。 输出信息含义 执行netstat后,其输出结果为 Active Internet connections (w/o servers) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 2 210.34. 6.89:telnet 210.34. 6.96: 2873 ESTABLISHED tcp 296 0 210.34. 6.89: 1165 210.34. 6.84:netbios-ssn ESTABLISHED tcp 0 0 localhost.localdom: 9001 localhost.localdom: 1162 ESTABLISHED tcp 0 0 localhost.localdom: 1162 localhost.localdom: 9001 ESTABLISHED tcp 0 80 210.34. 6.89: 1161 210.34. 6.10:netbios-ssn CLOSE Active UNIX domain sockets (w/o servers)

Linux strace命令

我怕爱的太早我们不能终老 提交于 2019-11-27 05:07:48
简介 strace常用来跟踪进程执行时的系统调用和所接收的信号。 在Linux世界,进程不能直接访问硬件设备,当进程需要访问硬件设备(比如读取磁盘文件,接收网络数据等等)时,必须由用户态模式切换至内核态模式,通 过系统调用访问硬件设备。strace可以跟踪到一个进程产生的系统调用,包括参数,返回值,执行消耗的时间。 输出参数含义 root@ubuntu:/usr# strace cat /dev/ null execve( " /bin/cat ", [ " cat ", " /dev/null "], [ /* 22 vars */]) = 0 brk( 0) = 0xab1000 access( " /etc/ld.so.nohwcap ", F_OK) = - 1 ENOENT (No such file or directory) mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, - 1, 0) = 0x7f29379a7000 access( " /etc/ld.so.preload ", R_OK) = - 1 ENOENT (No such file or directory) ... brk( 0) = 0xab1000 brk( 0xad2000) = 0xad2000 fstat(

01 Linux入门介绍

别说谁变了你拦得住时间么 提交于 2019-11-27 03:44:01
一、Linux 初步介绍 Linux的优点 免费的,开源的 支持多线程,多用户 安全性好 对内存和文件管理优越 系统稳定 消耗资源少 Linux的缺点 操作相对困难 一些专业软件以及游戏支持度不足 Linux的应用 网络服务器 关键任务的应用(金融数据库、大型企业网管环境) 学术机构癿高效能运算任务 手持系统(PDA、手机、导航系统) 个人办公使用 Linux的吉祥物/Logo 企鹅(英文名:Tux),由来:因为Torvalds在小时候被企鹅咬过,因此印象非常深刻 在Linux里,你可以通过命令使Tux说话: #sudo apt-get install cowsay #cowsay -f tux "你好!" Linux的发展之路 早期 的计算机架构还很难使用,除了指令周期幵不快外,操作接口也很困扰的!因为那个时候的输入设备只有卡片阅读机、输出设备只有打印机,用户也无法与操作系统互动(多道批处理操作系统)。后来由于硬件和操作系统的改良,可以使用键盘进行信息输入。 1960年初期 ,MIT(麻省理工学院)开发了 分时操作系统CTSS ,它可以让多个终端连接进入主机,利用主机的资源进行运算。但是先进的主机最多提供30台左右的终端机(只有输入输出功能) 1965年前后 ,Bell(贝尔实验室)、MIT(麻省理工学院)和GE(通用电气公司)共同发起了 Multics项目

ELK环境搭建

天大地大妈咪最大 提交于 2019-11-27 02:36:52
ELK环境搭建 因csdn语法支持与github不太一样,欢迎访问本文github版: https://github.com/JimXiongGM/KnowledgeBasedSearch/blob/master/ELK环境搭建.md 目录 准备 mysql数据准备 安装配置elasticsearch 7.3 安装配置Logstash 更新mysql数据 查询效果 使用ik分词器 安装Kibana 准备 本文参考网络资料,搭建Elasticsearch 7.3 + logstash 7.3 + kibana7.3环境,并使用ik分词器从mysql8.0中通过logstash导入数据到es中进行搜索。 将如下文件放入 /root/xiazai/ 。点击可进入文件下载页面。 elasticsearch-7.3.0-linux-x86_64.tar.gz elasticsearch-analysis-ik-7.3.0.zip logstash-7.3.0.tar.gz mysql-connector-java-8.0.16.jar 下拉列表中选择Platform Independent,解压.tar.gz可得到该jar kibana-7.3.0-linux-x86_64.tar.gz mysql数据准备 mysql环境搭建可参考 MySQL8.0环境搭建 。 进入mysql: mysql

Linux下的文本dos格式转Unix格式,去除^M符号

邮差的信 提交于 2019-11-27 01:40:59
问:我在Windows中通过FTP传一个文本文件到Linux中,但是打开文本文件后每行最后都有^M的标志。由于很长,用编辑器去除太麻烦,有什么解决办法呢? 答:为了解决这个问题,Linux下专门有两个工具可以互换Windows格式和Linux格式,它们分别是dos2unix和unix2dos。比如用下面的命令就可以将文件名为“filename”文件从Windows格式转换为Linux文本格式。 正文: 在Linux下,不可避免的会用VIM打开一些windows下编辑过的文本文件。我们会发现文件的每行结尾都会有一个^M符号,这是因为 DOS下的编辑器和Linux编辑器对文件行末的回车符处理不一致, 对于回车符的定义: Windows:0D0A Unix/Linux: 0A MAC: 0D 比较快捷的去除这些符号的方法有这么几种: (1)是用VI的命令: 使用vi打开文本文件 vi dos.txt 命令模式下输入 :set fileformat=unix :w (2) VI下使用正则表达式替换 g/^M/s/^M// 或者 %s/^M//g (3)使用sed 工具 sed ’s/^M//’ filename > tmp_filename (4)既然window下的回车符多了‘ ’,那么当然通过删除‘ ’ ,也可以实现: tr -d " " (5)最后一个方法是本人最常用的方法

shell脚本报错

混江龙づ霸主 提交于 2019-11-26 19:38:01
早几天在pc电脑写了一个shell脚本,用来执行springboot项目,然后在centos7执行的时候报错,脚本如下比较简单:start.sh,下面只是列举了一部分脚本代码 2、拷贝脚本到linux服务器执行报如下错误: -bash: ./test.sh: /bin/bash^M: bad interpreter: No such file or directory 后面查了下资料报错原因是: 我的start.sh的格式显示为:fileformat=dos start.sh是我在windows下编辑然后上传到linux系统里执行的。.sh文件的格式为dos格式。而linux只能执行格式为unix格式的脚本。 3、解决办法使用 vi 命令修改start.sh文件修改文件format为unix 使用命令:set ff=unix 再次查看: 最后执行./start.sh start就可以正常启动了。。。。 来源: https://www.cnblogs.com/cx-20190810/p/11331195.html