Articles of unix

ngrok如何在防火墙后面工作?

Ngrok( https://ngrok.com/ )应该允许您通过转发将本地端口和服务展示给万维网。 但是,如果我打开我的本地机器上的端口80,如下所示: ngrok 80 我回来了: Tunnel Status online Version 1.3/1.3 Forwarding http://3a4bfceb.ngrok.com -> 127.0.0.1:80 Forwarding https://3a4bfceb.ngrok.com -> 127.0.0.1:80 Web Interface http://127.0.0.1:4040 # Conn 0 Avg Conn Time 0.00ms 据我所知,任何对http://3a4bfceb.ngrok.com的请求都将通过端口80发送到本地计算机,但如果我坐在阻止传入通信的NAT /防火墙之后(这是一种非常常见的情况)。 ngrok是否会启动轮询请求以确定何时收到数据?

如何将文件权限更改为某个文件模式到当前目录的子文件夹?

使用chmod ,我在当前目录中执行chmod +x *.sh ,但是如果我想要更改所有文件,包括具有sh文件扩展名的子文件夹中的文件,该怎么办? chmod +x -R *会工作,但我需要更多的东西像chmod +x -R *.sh

目录中的最大数量的inode?

单个目录中是否有最大数量的inode? 我有一个超过200万个文件的目录,无法使用ls命令对该目录进行操作。 所以现在我想知道如果我已经超过了Linux的inode的限制。 2 ^ 64数字限制之前是否有限制?

有人可以解释下面的内存分配C程序的性能行为吗?

在我的机器上,时间A和时间B交换取决于是否定义了A (它改变了调用这两个calloc的顺序)。 我最初将其归因于寻呼系统。 奇怪的是,当使用mmap而不是calloc ,情况更加糟糕 – 两个循环都花费了与预期相同的时间。 从strace可以看出, calloc最终导致了两个mmap ,所以没有返回已经分配的内存。 我正在英特尔i7上运行Debiantesting。 #include <stdlib.h> #include <stdio.h> #include <sys/mman.h> #include <time.h> #define SIZE 500002816 #ifndef USE_MMAP #define ALLOC calloc #else #define ALLOC(a, b) (mmap(NULL, a * b, PROT_READ | PROT_WRITE, \ MAP_PRIVATE | MAP_ANONYMOUS, -1, 0)) #endif int main() { clock_t start, finish; #ifdef A int *arr1 […]

将文本文件中的所有行用引号(“something”)括起来

我有一个包含空格的目录列表。 我需要用“'来包围它们,以确保我的批处理脚本能够正常工作。 如何用一个'和一个'(引号)来包围每一个新行。 例如 文件1: /home/user/some type of file with spaces /home/user/another type of file with spaces 至 文件2: '/home/user/some type of file with spaces' '/home/user/another type of file with spaces'

系统日志性能是否可以改进?

我们有一个使用syslog机制的Linux应用程序。 花了一个星期的时间,试图找出为什么这个应用程序的运行速度慢于预期,我们发现,如果我们消除了系统日志,并直接写入日志文件,性能显着提高。 我明白为什么syslog比直接文件写入慢。 但我想知道:有没有办法configurationsyslog来优化其性能?

你怎么能拥有一个隐藏设备的所有权?

我想要拥有已经插入的隐藏设备的所有权,消耗它的输出,同时防止其他人(X11或terminal)消耗它。 如果我能帮上忙,我不想假装成为terminal,而是要垄断一个特定的隐藏或字符设备。 这个想法是,一些隐藏设备可能被x /terminal识别为鼠标/键盘,但第二个鼠标或键盘可以用于其他的东西,但要做到这一点,你需要确保他们不发送虚假input到开放的terminal。 有没有人有任何见解,如何做到这一点?

* nix是什么意思? 和Ruby有什么关系?

刚才在面试中看到这个问题……我想这跟UNIX发行版有关,但我不确定。 在这里或在维基百科找不到它,所以我问。 什么意思 ? 和Ruby有什么关系? 因为这个问题是关于Ruby的。

使用Rsync包含和排除选项以包含模式的目录和文件

我有问题得到我的rsync语法的权利,我想知道如果我的scheme实际上可以用rsync处理。 首先,我已经确认rsync在我的本地主机和远程主机之间正常工作。 在目录上进行直接同步是成功的。 这是我的文件系统的样子: uploads/ 1260000000/ file_11_00.jpg file_11_01.jpg file_12_00.jpg 1270000000/ file_11_00.jpg file_11_01.jpg file_12_00.jpg 1280000000/ file_11_00.jpg file_11_01.jpg file_12_00.jpg 我想要做的只是在子目录中以“file_11_”开头的文件运行rsync,我希望能够运行一个rsync作业来同步子目录中的所有这些文件。 这是我正在尝试的命令: rsync -nrv –include="**/file_11*.jpg" –exclude="*" /Storage/uploads/ /website/uploads/ 这会导致0个文件在我的空运行中被标记为传输。 我试过了各种其他的–include和–exclude语句的组合,但是仍然没有得到任何结果,或者得到了一切,就好像没有包含或排除选项一样。 任何人有任何想法如何做到这一点?

这个脚本不会按年龄正确sorting

我的脚本要求input姓名,电话号码和出生date,然后将这些详细信息修改为一个名为“birthday.csv”的逗号分隔值文件。 然后按出生datesorting“birthday.csv”。 然后显示新sorting的文件。 它还计算每个人的年龄和文件中的条目数量。 我的问题是,它包含所有的信息,但是在打印内容之前,它不会对文件进行sorting。 这里是代码: a=0 while [ $a -lt 2 ]; do echo Please enter a first name read firstName echo Please enter last name read lastName echo Please enter phone number read phoneNumber echo Please enter date of birth – format dd/mm/yyyy read dob echo "$firstName,$lastName,$phoneNumber,$dob" >> Birthdays.csv echo If you would […]