我刚刚将操作系统从 Ubuntu 20.04 LTS 更新到 20.04.1 LTS。当我尝试使用 root 以 root 身份运行 nautilus 时sudo nautilus,出现错误
Authorization required, but no authorization protocol specified
(org.gnome.Nautilus:4410): Gtk-WARNING **: 23:12:51.995: cannot open display: :10.0
Run Code Online (Sandbox Code Playgroud)
Ubuntu 20.04 LTS 中从未出现过这种情况。我试图尽可能避免重新安装 nautilus 以避免破坏更多东西,但我对这里的问题已经没有想法了。
有什么建议么?
我有一个看起来像这样的文件:
6 6 1
0 0 0
0.0 0.0 0.0
2.938947259546411 -5.090405972278119 0.000000000000000
Run Code Online (Sandbox Code Playgroud)
我想用 var1 的值替换第一行的第一列,用 var2 的值替换第一行的第二列
数字的值可以改变;此外,第一行中有重复的值,所以我不能使用类似的东西sed -i "s/6/$var1/"file
有没有办法让我将文件修改为
3 2 1
0 0 0
0.0 0.0 0.0
2.938947259546411 -5.090405972278119 0.000000000000000
Run Code Online (Sandbox Code Playgroud)
让 var1 为 3,var2 为 2?
我在 bash 中有一个 for 循环,可以将值写入文件。不过因为值比较多,所以过程比较耗时,我觉得可以通过改进代码来节省。
nk=1152
nb=24
for k in $(seq 0 $((nk-1))); do
for i in $(seq 0 $((nb-1))); do
for j in $(seq 0 $((nb-1))); do
echo -e "$k\t$i\t$j"
done
done
done > file.dat
Run Code Online (Sandbox Code Playgroud)
我已将输出操作移至整个循环完成后,而不是echo -e "$k\t$i\t$j" >> file.dat避免多次打开和关闭文件。但是,脚本写入文件的速度仍然很慢,大约 10kbps。
有没有更好的方法来改善 IO?
非常感谢 Jacek
我有一列包含格式内容的单元格ABCDP2S6_EFGHP2Te6_X_YY.Y_ZZZ
我想用公式命令来输出CDABP2S6-GHEFP2Te6
我用谷歌搜索了一下,似乎涉及 REPLACE 和 FIND,但找不到正确的方法。
有什么帮助吗?