Unix & Linux

Linux,FreeBSD和其他类似Un * x的操作系统用户的问答

3
bash是否支持类似于C的fork()的分支?
我有一个脚本,我想一次分叉,以便同一脚本的两个副本正在运行。 例如,我希望存在以下bash脚本: echo $$ do_fork() echo $$ 如果此bash脚本确实存在,则预期输出为: <ProcessA PID> <ProcessB PID> <ProcessA PID> 要么 <ProcessA PID> <ProcessA PID> <ProcessB PID> 我可以代替“ do_fork()”来获得这种输出,还是使bash脚本执行类似于C的fork?
25 shell  fork 


1
是否可以在Ubuntu上运行iCloud Drive?
我是苹果的活跃用户,我在家中拥有MacBook,但正在使用Linux PC。对我而言,最烦人的事情之一是在家庭,办公室和移动设备(例如文档等)之间同步我的个人数据。目前,我的主要云存储是iCloud(已集成到OS X)。今天,我尝试通过Wine安装Windows的iCloud,但没有成功。 有没有可能的方法来配置Wine或其他软件?我知道icloud.com,我需要像Dropbox一样自动同步。
25 ubuntu  icloud 



6
Windows上的Cygwin:无法打开显示
我在Surface Pro 3上运行Windows10。我安装了Cygwin,还添加了一些有用的软件包(gvim,nedit,emacs,vim,g ++)。但是,当我运行gvim时,显示“无法打开显示”。nedit也发生同样的事情。当我回显$ DISPLAY时,什么也没显示,所以我将DISPLAY设置为:0.0。我仍然得到“无法打开显示”。我尝试删除cygwin并重新安装,但是遇到了同样的问题。

3
删除〜/ .cache是​​否安全?
当我$HOME使用baobab(磁盘使用情况分析器)扫描目录时,发现它~/.cache消耗了大约一半的GB。 我也尝试重新启动并再次检查大小,但没有区别。 因此,我打算rm -rf ~/.cache。让我知道清除安全~/.cache吗?
25 cache  trisquel 

9
如何从文件中删除每隔两行?
文件: Data inserted into table. Total count 13 No error occurred Data inserted into table. Total count 45 No error occurred Data inserted into table. Total count 14 No error occurred Data inserted into table. Total count 90 No error occurred 预期输出文件: Data inserted into table. Total count 13 Data …

2
为什么“ grep关键字”使终端永远待机?
当我在终端中键入“ grep doc”时,它什么也没做,在我使用Ctrl+ C或退出之前,停止终端执行任何其他操作Z。 我知道这不是我应该使用grep的方式,但是很好奇为什么会这样。
25 grep 


2
如何捕获有序的STDOUT / STDERR并添加时间戳/前缀?
我已经探索了几乎所有 可用的 类似 问题,但均无济于事。 让我详细描述问题: 我运行一些无人值守的脚本,这些脚本可以产生标准输出和标准错误行,我想捕获它们 按终端仿真器显示的精确顺序,然后向它们添加诸如“ STDERR:”和“ STDOUT:”的前缀。 我尝试对它们使用管道,甚至基于epoll的方法,都无济于事。我认为解决方案是使用pty,尽管我对此并不熟练。我也偷看了Gnome VTE的源代码,但是效率不高。 理想情况下,我会使用Go而不是Bash来完成此操作,但我一直无法做到。似乎管道由于缓冲会自动禁止保持正确的行顺序。 有人能够做类似的事情吗?还是不可能?我认为,如果终端仿真器可以做到这一点,那不是-可能是通过创建一个以不同方式处理PTY的小型C程序吗? 理想情况下,我将使用异步输入读取这两个流(STDOUT和STDERR),然后根据需要重新打印它们,但是输入顺序至关重要! 注意:我知道stderred,但是它不适用于Bash脚本,并且不能轻易地添加前缀(因为它基本上包装了许多syscall)。 更新:添加以下两个要点 生成混合stdout / stderr的示例程序 上面程序的预期输出 (可以在我提供的示例脚本中添加亚秒级随机延迟以证明结果一致) 更新:正如@Gilles指出的那样,该问题的解决方案也将解决其他问题。但是我得出的结论是,不可能在这里和那里做所要求的事情。当使用2>&1这两种流时,应该在pty / pipe级别正确合并,但是要分别并以正确的顺序使用流,实际上应该使用stderred的方法,即involes syscall挂钩,并且在许多方面都可以视为脏污。 如果有人可以反驳以上内容,我将急于更新此问题。

6
同时计算多个摘要(md5,sha256)?
在磁盘I / O和可用RAM成为瓶颈(而CPU时间不受限制)的假设下,是否存在可以同时计算多个消息摘要的工具? 我对计算大型文件(以GB为单位)的MD-5和SHA-256摘要(特别是并行)特别感兴趣。我试过了openssl dgst -sha256 -md5,但是它仅使用一种算法来计算哈希。 预期行为的伪代码: for each block: for each algorithm: hash_state[algorithm].update(block) for each algorithm: print algorithm, hash_state[algorithm].final_hash()

4
如何禁用选择突出显示自动复制?
我终于发现自己在Linux的家中,但是自开始以来仍然困扰着我一件事,但我还没有找到一个现实的解决方案: 如何在Linux的桌面环境中禁用自动突出显示文本的复制 我的桌面环境是XFCE,窗口管理器是Openbox,它们都由Archlinux统一在一起,但是在其他发行版中确实存在这些问题。 每次我替换一段文本时,我: 高亮显示源,然后按通常的方式Ctrl- C然后选择要替换的文本,由于高亮显示的文本会自动将其复制到剪贴板,请从Clipman中手动重新选择刚复制的选择,并以这种方式粘贴。这是非常低效的。我绝望地求助于使用Windows进行源代码/文档的大量编辑。 我宁愿复制粘贴程序完全相同的Windows使用选择- Ctrl- C选择- - 。CtrlV 编辑 问题一直是我的错! 我无知地粘贴autocutsel -selection PRIMARY -fork &到了我的中.xprofile,导致自动剪纸器将我所有的选择同步到PRIMARY剪贴板中。 欲了解更多信息
25 x11  xfce  clipboard 

3
如果用户名包含@符号,我如何sftp到服务器
我必须通过sftp到服务器的特定端口,但用户名包含@符号。 假设用户是“ user@example.com”,而ftp服务器只是“ example.com” 我将以 sftp -oPort:8777 user@example.com@example.com 正如我所测试的,什么显然不起作用。 什么样的业余爱好者使用@创建用户名?好吧,我的老板做了。 我该如何解决?
25 ssh  users  sftp 

2
在bash中对while循环条件求反
在我正在处理的脚本的一部分中,我想验证输入的IP地址的格式正确。我想在输入格式不正确时进行循环。当格式正确时,以下内容适用于循环。 while [[ $range =~ ^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3} ]] do 我该如何转转说不适合该格式。我希望!=~可以使用,但是出现语法错误。
25 bash 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.