有没有办法将 mac 终端输出直接保存到文件中?
Is there a way to save a mac terminal output directly to a file?
我正在进行一项研究项目,我需要为此做很多计算。我基本上为 .sdf 文件中存在的结构计算了很多特征。我将整个过程自动化,并在 mac.
的终端中执行
事实是,有超过 48 行和大约 1500 列。手动将数据输入 excel sheet 将是一项非常艰巨的任务。我想知道有没有什么办法可以直接把所有的数据存成一个excel sheet或者不
整理不整理无所谓。我认为整理文件所付出的努力将比手动制作文件少得多。
输出为以缩进分隔的数字。例如,
(9613791) 2.69174 4.00454 4.2916 6.25497 6.65652 6.5094 5.18009 5.15649 5.823377.19567 8.21786 6.99439 16.2414 30.3753 30.6785 32.3146 30.0467 51.6735 25.142149.4748 51.7923 42.1594 52.7151 36.7925 1385.6 2004.66 2277.51 2055.07 2273.911577.31 996.44 2300.92 1986.91 1913.57 1486.7 2496.63 2.45285 3.78492 4.502884.55984 2.82045 2.75078 1.31798 4.53201 4.57725 3.39381 2.39053 3.80041
(6326464) 6.14815 5.46639 4.81788 6.00802 10.6837 8.52504 7.72782 8.05056 8.8713412.2334 12.8092 7.97405 20.3998 18.8032 25.2747 31.2464 33.5688 42.0236 25.741528.9837 33.9351 40.8985 47.1114 31.8816 752.681 1090.84 1049.61 953.366 1405.21942.868 876.854 1345.75 1178.31 1467.03 1395.57 1371.48 2.67685 3.35145 5.508316.20868 5.91418 4.43033 3.44952 6.23538 5.99355 6.30963 7.03768 6.14026 `
注意:这只是实际输出的一小段。在我得到 10 分之前,我无法 post 图像。我需要获取我在一行中放置括号的两个数字之间的数据。下一行从括号之间的第二个数字开始。这样的数据基本上有1500列左右。正如@deceze 在评论中所建议的那样,我将尝试更改我的程序以实现自动保存数据的功能。但是有没有一种替代方法可以帮助我在不尝试更改我的程序的情况下加快流程?
假设您的神秘程序名为 fred
,您 运行 通过输入
./fred
在终端中。现在,您可以通过 运行 像这样将输出发送到名为 file.txt
的文件中:
./fred > file.txt
现在,您可以通过以下命令 运行 复制文件的前 10 行:
head -10 file.txt | pbcopy
然后单击您问题下方的 edit
并粘贴(使用 Command-V)前 10 行,以便我们了解您在说什么。
如果您只想将该文件中每一行的第一个数字放入名为 lovely.csv
的 CSV
文件中,您可以这样做:
awk '{print }' file.txt > lovely.csv
如果您想要每行的第 9 列,请将上面的 </code> 更改为 <code>
。
如果你想要第一个、第二个和第四个字段,使用
awk '{print ,,}' file.txt > lovely.cv
我正在进行一项研究项目,我需要为此做很多计算。我基本上为 .sdf 文件中存在的结构计算了很多特征。我将整个过程自动化,并在 mac.
的终端中执行事实是,有超过 48 行和大约 1500 列。手动将数据输入 excel sheet 将是一项非常艰巨的任务。我想知道有没有什么办法可以直接把所有的数据存成一个excel sheet或者不
整理不整理无所谓。我认为整理文件所付出的努力将比手动制作文件少得多。
输出为以缩进分隔的数字。例如,
(9613791) 2.69174 4.00454 4.2916 6.25497 6.65652 6.5094 5.18009 5.15649 5.823377.19567 8.21786 6.99439 16.2414 30.3753 30.6785 32.3146 30.0467 51.6735 25.142149.4748 51.7923 42.1594 52.7151 36.7925 1385.6 2004.66 2277.51 2055.07 2273.911577.31 996.44 2300.92 1986.91 1913.57 1486.7 2496.63 2.45285 3.78492 4.502884.55984 2.82045 2.75078 1.31798 4.53201 4.57725 3.39381 2.39053 3.80041
(6326464) 6.14815 5.46639 4.81788 6.00802 10.6837 8.52504 7.72782 8.05056 8.8713412.2334 12.8092 7.97405 20.3998 18.8032 25.2747 31.2464 33.5688 42.0236 25.741528.9837 33.9351 40.8985 47.1114 31.8816 752.681 1090.84 1049.61 953.366 1405.21942.868 876.854 1345.75 1178.31 1467.03 1395.57 1371.48 2.67685 3.35145 5.508316.20868 5.91418 4.43033 3.44952 6.23538 5.99355 6.30963 7.03768 6.14026 `
注意:这只是实际输出的一小段。在我得到 10 分之前,我无法 post 图像。我需要获取我在一行中放置括号的两个数字之间的数据。下一行从括号之间的第二个数字开始。这样的数据基本上有1500列左右。正如@deceze 在评论中所建议的那样,我将尝试更改我的程序以实现自动保存数据的功能。但是有没有一种替代方法可以帮助我在不尝试更改我的程序的情况下加快流程?
假设您的神秘程序名为 fred
,您 运行 通过输入
./fred
在终端中。现在,您可以通过 运行 像这样将输出发送到名为 file.txt
的文件中:
./fred > file.txt
现在,您可以通过以下命令 运行 复制文件的前 10 行:
head -10 file.txt | pbcopy
然后单击您问题下方的 edit
并粘贴(使用 Command-V)前 10 行,以便我们了解您在说什么。
如果您只想将该文件中每一行的第一个数字放入名为 lovely.csv
的 CSV
文件中,您可以这样做:
awk '{print }' file.txt > lovely.csv
如果您想要每行的第 9 列,请将上面的 </code> 更改为 <code>
。
如果你想要第一个、第二个和第四个字段,使用
awk '{print ,,}' file.txt > lovely.cv