Articles of bash

sorting上次login时间

我有这样的输出 2015.08.03 personalCode: 12345678912, uid: 12345678-1234-1234-1234-123456789123, 2015.08.05 personalCode: 12345678912, uid: 016b353f-5b45-4ef6-b150-123456789123, 2015.08.06 personalCode: 12345678912, uid: 016b353f-5b45-4ef6-b150-123456789123, 2015.08.07 personalCode: 12345678912, uid: 016b353f-5b45-4ef6-b150-123456789123, 2015.08.10 personalCode: 12345678912, uid: 016b353f-5b45-4ef6-b150-123456789123, 2015.08.14 personalCode: 12345678912, uid: 016b353f-5b45-4ef6-b150-123456789123, 2015.08.17 personalCode: 12345678912, uid: 016b353f-5b45-4ef6-b150-123456789123, 2015.08.19 personalCode: 12345678912, uid: 016b353f-5b45-4ef6-b150-123456789123, 2015.08.24 personalCode: 12345678912, uid: 016b353f-5b45-4ef6-b150-123456789123, 2015.08.26 personalCode: 12345678912, uid: 016b353f-5b45-4ef6-b150-123456789123, 2015.08.31 personalCode: 12345678912, uid: […]

如何find使用shell脚本的两个文本文件之间的不寻常的行?

我有两个文本文件file1.txt&file2.txt file1.txt包含: a b c file2.txt包含: a b c d ef 输出应该是: d e f 我试图使用的命令是'diff file2.txt file1.txt'它只给出了通用行。

如何删除第N行linux的最后一个字符

我有一个类似结构的大文件: Data800, Data900, Data1000, ] } 我将如何去除从第三行到最后一行(在这种情况下,逗号位于Data1000旁边)的最后一个字符。 输出应该是这样的: Data800, Data900, Data1000 ] } 它将始终是需要删除最后一个字符的倒数第三行。 后端是linux,可以使用perl,bash,python等

多个sed和sed使用pipe道

我试图转换文件,可能有一个或多个行,并提取单词“三”。 示例文件是oneliner: [test@test tmp]$ cat test1 onetwothreefourfive[pi@pidora tmp]$ 我可以这样做: [test@test tmp]$ sed -e 's/.*two\(.*\)four.*/\1/' test1 three[pi@pidora tmp]$ 但我必须确保我的文件是在线的,所以我使用这个问题的命令: 如何使用sedreplace换行符(\ n)? [test@test tmp]$ sed -e ':a;N;$!ba;s/\n/ /g' -e 's/.*two\(.*\)four.*/\1/' test1 onetwothreefourfive[pi@pidora tmp]$ 它不起作用。 [test@test tmp]$ sed -e ':a;N;$!ba;s/\n/ /g' test1| sed -e 's/.*two\(.*\)four.*/\1/' three[test@test tmp]$ 我使用pipe道,它的工作原理。 请向我解释为什么sed在没有pipe道的情况下工作错误。 谢谢!

如何添加一个时间戳记bash脚本日志每个命令和排除集,回声,日志?

如何添加一个时间戳记到每个命令的bash脚本日志(排除设置,回声,日志)? 我运行一个备份脚本,并希望logging所有命令与时间戳: #./svnbackup.sh 2&>1 | timestamp_xtrace > ./svn-backup.log 2>&1 这是我的function,它不工作: timestamp_xtrace() { while IFS= read -r line; do if [[ "$line" =~ "^+ set" ]] && [[ "$line" =~ "^+ echo" ]] && [[ "$line" =~ "^+ log" ]]; then echo "$(date) $line"; fi done } 我想排除一些命令(设置,回声,日志…),但它不工作..有人有一个提示,以解决我的问题?

通过Bash从Cisco C40获得输出

背景 我们有一些思科C40,我试图通过bash自动化(虽然我会打开替代品)。 我需要login,拨打IP, 取回返回的呼叫ID,然后使用该CallID向远端发送DTMF音。 我能够获得大约90%的path,但出于某种原因,使用SSH不会返回使用交互式会话时返回的所有文本。 交互式Shell示例: login as: admin Using keyboard-interactive authentication. Password: Welcome to XXX TANDBERG Codec Release TC7.1.1.168aadf SW Release Date: 2014-04-11 *r Login successful OK xConfiguration Audio Volume: 0 ** end OK xCommand Dial Number: FAR_END_IP OK *r DialResult (status=OK): CallId: 73 ConferenceId: 44 ** end 非交互式Shell示例 没有ssh -T或ssh -t -t选项 这发生在call-init-step1.txt包含xConfiguration […]

在输出文件中打印列

我使用下面的命令得到了最后一个命令的输出 last -w -F | awk '{print $1","$3","$5$6$7$8","$11$12$13$14","$15}' | tac | tr ',' '\t' 现在为相同的输出,我想添加下面的列名称,然后复制到CSV文件或XLS文件。 有人可以帮我在这里。 列名称 USERNAME HOSTNAME LOGIN_TIME LOGOUT_TIME DURATION 输出看起来像这样 oracle localhost 2015 2.30 root localhost 2014 2.30 感谢你的帮助。

在Bash脚本中执行R命令?

从一个bash脚本我会喜欢执行这些R命令 install.packages('knitr', dependencies = TRUE) install.packages("xlsx", dependencies="Depends") install.packages("xtable") 一种方法是将它们放在一个R文件中,然后执行,但是我不希望这样做。 这些命令可以直接从Bash脚本执行吗?

保持活着ssh会话与脚本bash / expect

你好人们我试图做一个脚本bash使用期望部分进入服务器,并保持活动会话,我的脚本如下: #!/bin/bash /usr/bin/expect << eof spawn ssh user@server set prompt ":|#|\\\$" expect "password" interact eof 我可以进入服务器,但是会话在一秒钟后死亡,并返回到我的本地计算机, 任何人都可以帮我吗?

/ proc / <pid> / stat的'eip'字段似乎没有更新

根据这个线程,/ proc // stat的第30个值(从1开始)应该显示进程的“eip”值。 获取正在运行的应用程序的指令指针 但是当我打印bash进程的第30个值时,它一直返回相同的地址: root@graphics:/proc# ps | grep bash 3032 pts/21 00:00:00 bash root@graphics:/proc# cd 3032 root@graphics:/proc/3032# cat stat | awk '{print $30}' | xargs printf "0x%x" && echo 0x7f53790ef84a root@graphics:/proc/3032# cat stat | awk '{print $30}' | xargs printf "0x%x" && echo 0x7f53790ef84a root@graphics:/proc/3032# cat stat | awk '{print $30}' | xargs […]