[...]blog:locate 命令:文件查找命令 - 灵魂信息 (soulio.top)[...]
首页
留言
统计
友链
归档
关于
Search
1
typecho博客-SEO优化-永久链接设置-伪静态
89 阅读
2
搭建网站的三种方式:家庭服务器、云服务器、serv00免费服务器
63 阅读
3
DNF:包管理器
53 阅读
4
typecho主题和插件
52 阅读
5
Homebrew:包管理器
45 阅读
网站搭建
Linux命令详解
登录
Search
标签搜索
Linux命令
serv00
Linux
网站搭建
typecho
Excel
正则表达式
PVE
mdx
soulio
累计撰写
146
篇文章
累计收到
2
条评论
今日撰写
0
篇文章
首页
栏目
网站搭建
Linux命令详解
页面
留言
统计
友链
归档
关于
用户登录
登录
搜索到
127
篇与
的结果
2024-09-11
cal:日历
cal 命令用于显示日历,可以显示当前月份的日历或者指定月份/年份的日历。相关的命令还有:timedatectltags: 日历1.安装apt install ncal 2.示例cal 是传统命令,ncal是新版命令。排版是主要变化。显示当月:cal指定年月:cal 10 2024显示三个月(过去、现在、未来):cal -3某月:cal -m 10某年(将显示12个月):cal -y 20243.简单的参数格式:cal [选项] [月份] [年份] 选项: -3:显示前一个月、当前月和下一个月的日历。 -m:将星期一作为每周的第一天。 -y:显示指定年份的整年日历。 参数: 月份:可选参数,表示要显示的月份(1 到 12)。 年份:可选参数,表示要显示的年份。
2024年09月11日
9 阅读
0 评论
1 点赞
2024-09-11
awk(基础):文本处理三剑客
awk 提供了一种灵活的方式来处理文本文件,可以用于数据提取、数据转换、报告生成等任务。Linux文本处理三剑客: awk sed grep 一、基本语法awk '模式 { 动作 }' 要处理的文件 二、工作原理 awk 逐行扫描文件,将每一行视为一个记录(record)。 用户可以定义一个模式(pattern),当某一行满足该模式时,执行对应的动作(action)。 动作可以是打印、计算、格式化输出等操作。 三、常用功能 字段分隔符:默认情况下,awk 使用空格作为字段分隔符,但可以通过 -F 参数指定其他分隔符。例如,awk -F',' '{print $1}' filename 使用逗号作为字段分隔符。 内置变量: $0:所有字段。 $1, $2, ...:第一个字段、第二个字段,以此类推。 NF:字段数。 NR:当前行号。 FS:字段分隔符。 OFS:输出字段分隔符。 条件匹配:可以使用条件表达式进行匹配,例如 /pattern/ { action }。 循环:awk 支持 for、while 循环,可以在动作部分使用。 内置函数:awk 提供了许多内置函数,如数学函数、字符串函数等,可以在动作部分使用。 输出格式化:可以使用 printf 函数对输出进行格式化。 四、简单示例1. 筛选列示例文本如下:Alice 25 Bob 30 Charlie 28 David 22 输出指定列第一列,姓名#命令 awk '{print $1}' data.txt #输出 Alice Bob Charlie David 第二列,年龄#命令 awk '{print $2}' data.txt #输出 25 30 28 22 2. 计算数据假设有一个包含数字的文件 numbers.txt,内容如下:10 20 30 40 计算所有数字的总和:#命令 awk '{sum += $1} END {print sum}' numbers.txt #输出 100 3. 条件匹配的行假设有一个包含学生成绩的文件 grades.txt,内容如下:Alice 85 Bob 70 Charlie 92 David 65 打印成绩大于等于80分的学生:#命令 awk '$2 >= 80 {print $1, $2}' grades.txt #输出 Alice 85 Charlie 92 4. 自定义分隔符假设有一个以逗号分隔的数据文件 data.csv,内容如下:Alice,25 Bob,30 Charlie,28 David,22 使用逗号作为分隔符打印第二列:#命令 awk -F',' '{print $2}' data.csv #输出 25 30 28 22 5. 格式化输出假设有一个包含学生成绩的文件 grades.txt,内容如下:Alice 85 Bob 70 Charlie 92 David 65 格式化输出姓名和成绩:#命令 awk '{printf "Name: %-10s Grade: %d\n", $1, $2}' grades.txt #输出 Name: Alice Grade: 85 Name: Bob Grade: 70 Name: Charlie Grade: 92 Name: David Grade: 65 这些示例展示了 awk 命令在处理文本文件时的一些常见用法。根据具体的需求,你可以根据这些示例进行调整和扩展。五、复杂示例用awk命令把目录的权限、属组、link提出来看一下:$ ll /var | awk '{printf "%-10s %-8s ", $1, $4; for (i=9; i<=NF; i++) printf "%s ", $i; print ""}' 总计 drwxr-xr-x root ./ drwxr-xr-x root ../ drwxr-xr-x root backups/ drwxr-xr-x root cache/ drwxrwsrwt whoopsie crash/ drwxr-xr-x root dsm/ drwxr-xr-x root lib/ drwxrwsr-x staff local/ lrwxrwxrwx root lock -> /run/lock/ drwxrwxr-x syslog log/ drwxrwsr-x mail mail/ drwxrwsrwt whoopsie metrics/ drwxr-xr-x root opt/ lrwxrwxrwx root run -> /run/ drwxr-xr-x root snap/ drwxr-xr-x root spool/ drwxrwxrwt root tmp/ 当然这意义不大,还复杂。六、可以做到哪些 文本处理: 提取数据:可以从文本文件中提取特定字段、行或数据。 格式化输出:可以根据需要对数据进行格式化输出,包括对齐、填充等。 搜索和替换:可以搜索文本文件中的特定模式,并进行替换或其他操作。 数据处理: 计算:可以对数据进行数学运算,如求和、平均值等。 统计:可以统计数据文件中的行数、字段数,或者根据条件进行统计。 过滤和排序:可以根据条件过滤数据,或者对数据进行排序操作。 报告生成: 生成报告:可以根据数据生成报告、摘要或汇总信息。 格式化输出:可以将数据以特定格式输出,适用于生成报表或日志文件。 数据转换: 字段分割:可以根据指定的分隔符对数据进行分割和处理。 数据转换:可以将数据从一种格式转换为另一种格式。 条件匹配: 根据条件处理数据:可以根据条件匹配特定行或字段,并执行相应的操作。 自定义功能: 自定义函数:可以在 awk 脚本中定义和使用自定义函数,增强灵活性和功能性。 数组操作:支持数组操作,可以用于更复杂的数据处理任务。 灵活性和扩展性: awk 提供了丰富的内置函数和变量,以及灵活的语法,使其非常适合处理各种文本和数据处理任务。 可以结合其他 Unix 工具和管道操作,实现更复杂的数据处理流程。 七、怎么做 模式组合:可以使用逻辑运算符组合多个模式。 自定义函数:可以在 awk 脚本中定义和调用自定义函数。 数组操作:awk 支持数组操作,可以用于更复杂的数据处理。
2024年09月11日
10 阅读
0 评论
0 点赞
2024-09-11
adjtimex:改善时钟的准确度
省流:冷门命令,不用关注。adjtimex 命令是 Linux 系统中用于调整内核时间同步参数的工具。它允许系统管理员微调系统时钟,以确保时间同步的精确性。下面是对 adjtimex 命令的详细介绍:adjtimex 命令简介adjtimex 命令通过修改内核中的时间调整参数来影响系统的时钟行为。这些参数包括时钟频率的微调、时间偏差的校正以及时钟精度的调整。该命令通常用于 NTP(网络时间协议)服务器,以优化时间同步的准确性。主要功能 查看当前时间同步参数:adjtimex 执行此命令无需任何选项,将显示当前系统的时间同步参数。 调整时钟频率:adjtimex -p [频率微调值] 使用 -p 选项可以调整时钟的频率,正值增加频率,负值减少频率。 设置时间偏差:adjtimex -o [时间偏差值] -o 选项用于设置时间偏差,单位是微秒。 调整最大时间偏差:adjtimex -m [最大时间偏差值] -m 选项用于设置系统允许的最大时间偏差。 使用注意事项 adjtimex 命令需要 root 权限才能执行,因为它涉及到系统级别的配置。 在调整时间参数时,应谨慎操作,错误的设置可能会导致时间同步问题。 通常情况下,普通用户不需要手动调整这些参数,除非是在特定的网络环境或硬件问题需要时。 实际应用场景 在 NTP 服务器上,使用 adjtimex 可以优化时间同步的准确性。 在硬件时钟出现偏差时,可以通过 adjtimex 进行微调,以减少系统时间误差。adjtimex 是一个高级命令,通常只有系统管理员或具有专业知识的人员才会使用。在使用前,建议详细阅读相关文档,以确保正确理解和操作。
2024年09月11日
16 阅读
0 评论
0 点赞
2024-09-11
apt:Debian 高级包管理器
apt 是 Advanced Package Tool 的缩写。apt 是一个在 Debian 及其衍生版本(如 Ubuntu)上管理软件包的工具。以下是一些常见的 apt 命令和用法:1. 更新软件包列表sudo apt update 2. 安装软件包sudo apt install package_name 3. 更新已安装软件包sudo apt upgrade 4. 升级系统中所有软件包sudo apt dist-upgrade 5. 删除软件包sudo apt remove package_name 6. 清理无用的软件包sudo apt autoremove 7. 搜索软件包apt search keyword 8. 显示软件包信息apt show package_name 9. 列出已安装的软件包apt list --installed 10. 列出可升级的软件包apt list --upgradable 11. 列出软件包的依赖关系apt depends package_name 12. 显示软件包的文件信息dpkg -L package_name 13. 添加软件源编辑 /etc/apt/sources.list 文件来添加软件源。14. 清除软件包缓存sudo apt clean 早期使用apt-get强调处理依赖关系,现在直接使用apt。
2024年09月11日
6 阅读
0 评论
0 点赞
2024-09-11
at:定时任务,仅执行一次
at 命令用于在指定时间执行一次性任务。这个命令也是需要独立安装的:apt install at它的兄弟crontab用于执行周期性任务。一、创建任务这个命令是比较灵活的: 第一行写时间,第二行写任务,第三行按下Ctrl+D结束输入at 10:30 PM at> echo "Hello, world!" > output.txt at> Ctrl+D 你也可以在一行中完成$ echo "ls -l" > output.txt | at now + 1 hour warning: commands will be executed using /bin/sh job 1 at Wed Sep 11 17:05:00 2024 任务还可以是脚本at 3pm tomorrow < script.sh 最准确是是指定一个绝对时间at 10:00 2024-04-07 < script.sh 二、查看任务使用atq或at -l查看当前计划任务列表$ at -l 1 Wed Sep 11 17:05:00 2024 a root 2 Wed Sep 11 17:10:00 2024 a root 查看任务内容:使用at -c 任务序号命令,输出的最底部就是任务的内容。输出不太友好。三、取消任务先查看任务列表,再使用atrm或者at -r命令可以取消一个计划任务。例如,要取消任务编号为1的任务:atrm 1 四、守护进程atd● atd.service - Deferred execution scheduler Loaded: loaded (/lib/systemd/system/atd.service; enabled; vendor preset: enabled) Active: active (running) since Wed 2024-07-31 09:05:04 CST; 1 month 11 days ago Docs: man:atd(8) Main PID: 1072 (atd) Tasks: 1 (limit: 9283) Memory: 284.0K CPU: 169ms CGroup: /system.slice/atd.service └─1072 /usr/sbin/atd -f 五、配置文件默认:所有用户都可以使用at命令/etc/at.allow 明确指出可以使用at命令的用户:zhangsan lisi wangwu /etc/at.deny明确指出不可以使用at命令的用户:zhaoliu 六、详细选项at 选项 时间 -m: 当任务完成时,发送邮件给用户。如果不想发送邮件,可以在命令后面加上>/dev/null 2>&1,将输出重定向到/dev/null。 -f <file>: 指定一个包含要执行命令的文件。 -l: 列出当前用户的所有at任务。 -d <job>: 删除指定的at任务。 -r <job>: 删除指定的at任务,与-d参数相同。 -q <queue>: 指定任务的优先级队列。数字越小,优先级越高。 -v <job>: 显示指定at任务的详细信息。 -c <job>: 显示指定at任务的命令。 -t <time>: 指定任务的执行时间,格式为HH:MM。 -d: 删除所有当前用户的at任务。 短命令 atq: 等效at -q命令。 atrm: 等效at -r命令。 batch: 在系统资源较为空闲时执行一组任务。
2024年09月11日
9 阅读
0 评论
0 点赞
1
...
23
24
25
26