
linux
Olivia_Vang
水滴石穿
展开
-
使用strace,lstrace,truss来跟踪程序的运行过程
转发comment:可以用这篇文章了解一些 strace,lstrace,truss 命令的概念和用法。原文地址:https://www.ibm.com/developerworks/cn/linux/l-tsl/简介进程无法启动,软件运行速度突然变慢,程序的"Segment Fault"等等都是让每个Unix系统用户头痛的问题,本文通过三个实际案例演示如何使用truss、strace和l...转载 2020-03-31 14:11:33 · 1077 阅读 · 0 评论 -
Linux 磁盘I/O的三种方式对比:标准I/O、直接 I/O、mmap
1.引入让我们先看一下Linux系统下IO结构模型从图中可以看到标准 I/O、mmap、直接 I/O 这三种 I/O 方式在流程上的差异1.1 标准I/O大多数文件系统的默认I/O操作都是标准I/O。在Linux的缓存I/O机制中,数据先从磁盘复制到内核空间的缓冲区,然后从内核空间缓冲区复制到应用程序的地址空间。读操作:操作系统检查内核的缓冲区有没有需要的数据,如果已经缓存了,那么...转载 2020-03-30 15:21:30 · 1960 阅读 · 0 评论 -
awk 不报错的问题
本文可以回答以下问题话题相关#awk 和 grep 的退出状态不同#awk 不报错发现问题背景写了一个shell脚本,把本来用grep的部分改用了awk,发现原来的报错部分不能用了。比如这个grep代码,文件中有的单词才输出"word is in the file."#!/bin/bashset -euo pipefailfor a in cat dogdo ret=0...原创 2020-01-31 15:05:18 · 823 阅读 · 0 评论 -
linux 退出状态码
在Linux状态中,每当命令执行完成后,系统都会返回一个退出状态。该退出状态用一个整数值表示,用于判断命令运行的正确与否。最后一次执行命令的退出状态值被保存在内置变量“$?”中,所以,可以通过echo语句测试命令是否运行成功。一般来讲,退出状态 0 表示正常执行,没有遭遇任何问题。其他非零的状态码均表示失败。状态码描述0命令返回成功1一般性未知错误2不适...原创 2020-01-31 14:25:33 · 2606 阅读 · 0 评论 -
linux 向空文件中插入空行
这篇文章可以回答以下问题话题相关#linux 向空文件中插入空行#sed 不能向空文件中插入内容#sed 不能处理空文件#linux 向空文件中插入内容#什么是空文件#把文件做成空文件#shell代码,做一个指定空行数文件什么是空文件即文件大小为0的文件。比如用touch file.txt的touch命令新建的文件,都是空文件。文件大小可以通过ll命令来查看。用echo命...原创 2020-01-30 14:24:17 · 6895 阅读 · 0 评论 -
linux 取得文件行数
话题相关#linux 如何取得文件行数#linux 如何知道一个文件有多少行#shell 如何取得文件行数方法1 wc命令wc -l filewc命令是word count的缩写,为统计指定文件中的字节数、字数、行数,并将统计结果显示输出。其中,-l参数是用来统计行数的。方法2 利用awk,获取最后一行的行号awk 'END {print NR}' file效果...原创 2020-01-29 16:06:10 · 10681 阅读 · 0 评论 -
Shell 循环结构中continue和break的用法
Shell 循环结构中continue和break的用法Shell编程中常用到循环结构以完成大量重复的、有规律任务。一般而言,脚本程序在开始执行循环体后,要等到所有循环迭代完成后,循环命令才会结束。但我们可以使用两个特定的命令continue、break配合条件判断命令控制循环体在执行过程中停止执行。尽管continue和break都是用在循环体中,用以停止某个层次循环的终止,但二者作用域...转载 2020-01-28 17:35:24 · 1421 阅读 · 0 评论 -
关于sed 至少要掌握这些
sed-最基础知识执行sed命令文件字符串的替换输出指定的行使用正则表达式添加插入文本原创 2020-01-28 15:29:43 · 377 阅读 · 0 评论 -
linux 给文件替换字符串/替换内容/替换某行 (shell,sed)
本文是要讲linux 不打开文档/文件的情况下,替换文本内容。打开文档,在文档/文件内替换内容的,可以用vim,可参考这篇文章vim 替换文本 。话题相关#linux 文件替换字符串#sed 字符串替换#linux 替换指定行内容#linux 替换某行linux一般用sed来替换文本到指定行。基本语法s (substitute)为查找替换命令# 在输出或打印中,替换字符串。并...原创 2020-01-27 16:43:10 · 113010 阅读 · 1 评论 -
Linux 添加文本到指定行/在文件的指定行添加内容(shell, sed)
话题相关#Linux如何添加文本到指定行#shell如何添加文本到指定行#sed 插入文本用sed来插入文本到指定行。基本语法只是在屏幕输出/打印中显示更改,并不改变文件本身内容sed '作用范围行 插入行前/行后 插入内容' 文件名# 中间的空格也可省略sed '作用范围行插入行前/行后插入内容' 文件名# 常常在插入内容前留空格sed '作用范围行插入行前/行后 插入...原创 2020-01-24 18:11:58 · 86733 阅读 · 0 评论 -
linux查找字符串所在行,输出行号
查找某个字符串所在行,可以用grep或awk来解决。二者最大区别是,grep的结果是输出匹配内容的同时输出其所在行号;awk可以仅输出行号,不输出匹配内容。按需选择。【模糊匹配 】输出行号grepgrep -n "要匹配的字符串" 文件名awkawk "/要匹配字符串/{print NR}" 文件名【精确匹配(全匹配)】输出行号grepgrep -wn "要匹...原创 2020-01-24 13:13:00 · 34499 阅读 · 2 评论 -
vim 替换文本
基本语法:作用范围s/替换查找目标/替换成为/替换目标option例:%s/ok/ng/g: 进入命令模式s (substitute)查找替换命令例子中的,%s/ok/ng/g 会在全局范围(%)查找ok并替换为ng,作用范围内出现的目标都会被替换(g)。作用范围选项当前行,不写内容# 作用范围在当前行:s/ok/ng/g全文,用%# 作用范围在全文:%s...原创 2020-01-22 17:17:42 · 3192 阅读 · 1 评论 -
ubuntu 无法执行netstat命令
在ubuntu执行netstat无法执行,出现以下提示,VirtualBox:$ netstatCommand 'netstat' not found, but can be installed with:sudo apt install net-tools解决:按照提示安装 net-toolsVirtualBox:/$ sudo apt install net-tools按照...原创 2020-01-22 13:46:51 · 10412 阅读 · 0 评论 -
linux(awk) 将某个以逗号分隔的行改为列(横向纵向格式调整)
我想达到的效果是这样的a,b,c →效果abc假设`sample.txt`文本的内容如下:a,b,c,d,e用awk,使用如下的命令cat sample.txt |awk 'BEGIN{RS=","}{print $1}'或awk 'BEGIN{RS=","}{print $1}' sample.txt其中BEGIN{RS=","...原创 2020-01-20 13:45:15 · 4998 阅读 · 0 评论 -
linux-列出所有子目录下的文件/再归的表示文件
列出所有子目录下的文件/再归的表示文件下的所有子文件ls -R再归的列出所有子目录下的文件,并显示详细信息ls -lRls -lR是ls -l 与ls -R的结合。ls -l列出文件的详细信息。...原创 2020-01-20 10:07:15 · 12860 阅读 · 0 评论