Unix & Linux

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


5
Linux中的文件编辑是否直接保存到磁盘?
我曾经认为文件更改直接保存到磁盘中,也就是说,一旦我关闭文件并决定单击/选择“保存”。但是,在最近的一次对话中,我的一个朋友告诉我,通常情况并非如此。操作系统(特别是我们在谈论Linux系统的操作系统)将更改保存在内存中,并且它具有一个守护程序,该守护程序实际上将内容从内存写入磁盘。 他甚至给出了外部闪存驱动器的示例:这些驱动器已安装到系统中(已复制到内存中),有时由于后台驻留程序尚未将内容保存到闪存中而导致数据丢失。这就是为什么我们卸下闪存驱动器。 我不了解操作系统的功能,因此我完全不知道这是否正确以及在哪种情况下。我的主要问题是:这是否会像Linux / Unix系统(可能还有其他OS)中所述发生?例如,这是否意味着如果我在编辑和保存文件后立即关闭计算机,则更改很可能会丢失吗?也许这取决于磁盘类型-传统硬盘驱动器还是固态磁盘? 该问题专门针对具有磁盘来存储信息的文件系统,即使人们进行了任何澄清或比较也是如此。



8
如何从命令行创建空白PDF?
我最近只需要一个空白的PDF页面(8.5“ x 11”大小),并且意识到我不知道如何从命令行制作一个。 发行touch blank.pdf会产生一个空的PDF 文件。是否有命令行工具生成空白的PDF 页面?
57 command-line  pdf 

5
为什么curl和wget会导致403被禁止?
我尝试使用下载文件,wget并且curl它被拒绝并显示403错误(禁止)。 我可以使用同一台计算机上的Web浏览器查看文件。 我再次尝试使用浏览器的用户代理,该代理由http://www.whatsmyuseragent.com获得。我这样做: wget -U 'Mozilla/5.0 (X11; Linux x86_64; rv:30.0) Gecko/20100101 Firefox/30.0' http://... 和 curl -A 'Mozilla/5.0 (X11; Linux x86_64; rv:30.0) Gecko/20100101 Firefox/30.0' http://... 但是还是禁止的。403可能还有其他原因,我可以通过哪些方式更改wget和curl命令以克服它们? (这并不是要获取文件-我知道我可以从浏览器中保存文件;这是要了解为什么命令行工具的工作方式有所不同) 更新 感谢对此问题的所有出色回答。我遇到的特定问题是服务器正在检查引荐来源网址。通过将此添加到命令行中,我可以使用curl和获得文件wget。 检查引荐来源网址的服务器通过302跳到另一个根本不执行任何检查的位置,因此该站点的curl或wget站点工作正常。 如果有人感兴趣,那是因为我正在阅读此页面以了解嵌入式CSS,并试图以该站点的CSS为例。我遇到麻烦的实际URL是这个,而curl我最终遇到的是 curl -L -H 'Referer: http://css-tricks.com/forums/topic/font-face-in-base64-is-cross-browser-compatible/' http://cloud.typography.com/610186/691184/css/fonts.css 而wget是 wget --referer='http://css-tricks.com/forums/topic/font-face-in-base64-is-cross-browser-compatible/' http://cloud.typography.com/610186/691184/css/fonts.css 很有意思。
57 wget  curl 

6
使用jq提取CSV格式的值和格式
我有以下JSON文件: { "data": [ { "displayName": "First Name", "rank": 1, "value": "VALUE" }, { "displayName": "Last Name", "rank": 2, "value": "VALUE" }, { "displayName": "Position", "rank": 3, "value": "VALUE" }, { "displayName": "Company Name", "rank": 4, "value": "VALUE" }, { "displayName": "Country", "rank": 5, "value": "VALUE" }, ] } 我想使用以下格式的CSV文件: …
57 bash  python  csv  json  jq 

7
如何将不区分大小写的模式与ls匹配?
我想列出所有匹配特定模式的文件,而忽略大小写。 例如,我运行以下命令: ls *abc* 我想查看所有以“ abc”作为文件名一部分的文件,忽略大小写,例如 -rw-r--r-- 1 mtk mtk 0 Sep 21 08:12 file1abc.txt -rw-r--r-- 1 mtk mtk 0 Sep 21 08:12 file2ABC.txt 注意 我已经在手册页中搜索了案例,但是找不到任何东西。

6
如何避免ssh询问权限?
我们正在尝试加快用于RAC安装的oracle节点的安装。这就要求我们安装并配置ssh,以便不提示输入密码。 问题是:首次使用时,系统提示您输入 RSA key fingerprint is 96:a9:23:5c:cc:d1:0a:d4:70:22:93:e9:9e:1e:74:2f. Are you sure you want to continue connecting (yes/no)? yes 有没有办法避免这种情况,或者我们注定要从每个服务器手动至少在每个服务器上连接一次?

4
Logrotate:“日志不需要旋转”为什么?
我有以下新的logrotate配置: /var/log/nexus/nexus.log { rotate 7 missingok compress delaycompress copytruncate daily } 运行时logrotate -d nexus,我得到以下信息: reading config file nexus reading config info for /var/log/nexus/nexus.log Handling 1 logs rotating pattern: /var/log/nexus/nexus.log after 1 days (7 rotations) empty log files are rotated, old logs are removed considering log /var/log/nexus/nexus.log log does not need …
57 logrotate 

1
使用rsync保留权限
假设我在LINUX中有一个文件a.txt,权限为0664。当我使用rsync将文件复制到我的Mac时rsync -r -t -v LINUX MAC,该文件的权限变为0644。 使用rsync时如何保留文件的权限?-g选项不起作用。


7
将历史记录命令放到命令行而不执行
我使用!n,其中(n)是执行历史记录文件中的行的行号,该文件我要在我通过history |找到的命令提示符下执行。 但是有一个我希望手动修改的命令行历史记录事件。如何在未实际执行的情况下将历史事件内容插入命令行,以便进行修改然后按回车键? 最好,

5
如何在solaris中获得完整的进程列表,而没有截断的行?
有没有一种方法可以在solaris中生成完整的过程清单,而不会出现断线?我已经尝试过ps使用以下参数的命令: -f生成完整列表。(请参阅下面的 完整列表中各列的重要性- ing。) -l生成长列表。(见下文。) 因此,这两者似乎都可以满足我的要求,但是在ps手册页中,我发现了这一点: args该命令及其所有参数为 串。实现可能会截断 该值等于场宽;它是 依赖于实现 进一步的截断发生。它是 未指定字符串 表示的是参数的一个版本 传递给命令的列表 它何时开始,或者是 参数可能已被修改 通过应用程序。应用程序无法 取决于能够修改他们的 参数列表并进行修改 反映在ps的输出中。 Solaris实施限制了 字符串到80个字节; 字符串是 参数列表的原样 启动时传递给命令。 基本上说输出将被截断,对此我无能为力。所以,我要来这里。当然,其他人也遇到了这个问题,甚至有办法解决。我猜想ps无法做到这一点,所以我需要使用其他工具来做到这一点。准确吗?
57 process  solaris  ps 

9
如何在bash中仅打印定义的变量(shell和/或环境变量)
set如果不带参数调用bash内置命令,则将打印所有shell和环境变量,以及所有已定义的函数。这使得输出对于人类来说是无法使用的,并且难以实现grep。 如何使bash内置命令set仅打印变量而不打印函数? 还有其他仅打印shell变量而不显示功能的命令吗? 注意:bash区分shell变量和环境变量。在此处查看环境变量与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.