Articles of Linux操作系统

UNIX KSH脚本中是否有“Goto”?

在KSH中有一种方法可以退出一个case语句,然后转到一个特定的行来执行下一个代码? 或者有可以使用的转让标签? 像这样的东西,而不是嵌套吨分支?

ant scp任务挂在Linux上

我遇到了一个问题,在一个文件集复制期间ant scp任务挂起。 任务是: <scp file="${usr}:${pwd}@${hst}:${dir}/*" todir="${to}" trust="true"/> 它成功复制了一些文件,然后挂起。 请注意,它从本地主机复制的主机,但这应该没有区别。 我也使用了相同的ant脚本将文件从同一个Linux主机复制到Windows机器上,而且这个工作没有任何问题。 谷歌search显示,在2007年左右出现了类似的问题,但升级到解决scheme最新版本的ant(或降级jsch)他们给我没有解决问题。 (这个缺陷也在https://issues.apache.org/bugzilla/show_bug.cgi?id=41090 ) 我用了ANT 1.8.2,ANT 1.7.1和ANT 1.6.5,他们都有这个问题。 我正在使用jsch 0.1.44,但即使使用jsch的更高版本,我也会遇到这个问题。 有任何想法吗?

使用Linux pipe的过程编程模型()

从http://pubs.opengroup.org/onlinepubs/009604599/functions/pipe.html : pipe()函数将创build一个pipe道,并将两个文件描述符分别放入参数fildes [0]和fildes [1]中,这些参数指向pipe道的读写端的打开文件描述。 有一个父母将数据写入其子的例子: int fildes[2]; const int BSIZE = 100; char buf[BSIZE]; ssize_t nbytes; int status; status = pipe(fildes); if (status == -1 ) { /* an error occurred */ … } switch (fork()) { case -1: /* Handle error */ break; case 0: /* Child – reads from pipe */ close(fildes[1]); […]

如何更改cPanel的默认端口?

我有一台服务器,并在该服务器上的cPanel运行在2083端口。 我需要这个URL来configuration我的其他服务。 我想把端口2083更改为8088.我必须进行更改。 我检查了我的httpd.conf文件 RewriteCond %{HTTP_HOST} ^cpanel\. RewriteCond %{HTTPS} on RewriteRule ^/(.*) https://127.0.0.1:2083/$1 [P] 那么是否有任何改变,我必须在这个文件来改变cPanel。 我检查了cpanel / APACHE_CONFIG,但我没有得到任何提示。

大量的文件连接

我有一个目录文件名大约3-4百万个文件,以type1.txt, type2.txt. (文件是1type1.txt, 1type2.txt,2type2.txt,2type2.txt等) 现在我想连接所有以type1.txt&type2.txt结尾的文件。 目前我正在为type2.txt同样做cat *type1.txt > allTtype1.txt type2.txt 。 我想保留最终输出文件的顺序,这是我的猜测, cat是这样做的。 但是太慢了。 请build议一些更快的方法来做同样的事情。 谢谢,拉维

Linux shell中的命令组

假设我有这个shell脚本调用cpdir: (cd $1 ; tar -cf – . ) | (cd $2 ; tar -xvf – ) 当我运行它时,主shell应该创build两个进程(子壳)同时执行两组命令。 但是,shell如何确保两个进程都转换到合适的目录,然后将进程的内容打包并发送到第二个进程进行解包? 为什么没有竞争条件? 是否每个进程的每个命令都会按顺序执行,尽pipe进程可以并行? 即第一个进程运行“cd $ 1”,然后第二个进程运行“cd $ 2”(或者它应该与第一个进程同时执行?不确定),那么第一个进程会把所有东西打包,最后发送到第二个进程。 虽然,我不知道关于焦油的一件小事: tar -cf – . 我知道点(。)是当前目录的内容。 但是,命令中的“ – ”是什么?

如何在Delphi Prism中创buildinifile,以便在window和Linux(Mono)上运行.net。

我的Delphi Prism程序需要创build和读写,但是我想我注意到Delphi Prism并不支持任何Inifile结构。 (如果我错了,纠正我) 这导致我谈论ShineOn库文件,它支持inifile。 但是,在Mono下的Linux上运行程序时,会使程序崩溃。 如果我使用ShineOn的任何方法,都没有关系。 只要ShineOn库文件在using关键字下面列出,程序就不会运行,而是在Linux上完全崩溃。 你可以创buildinifile在delphi棱镜的.net将在窗口和Linux(单声道)工作? 如果是这样,你会怎么做? 我没有在互联网和Stackoverflowsearch答案,这导致了我的C#类INI文件。 我想,这是有前途的,直到我注意到它需要加载Kernel32.dll文件工作。 (再次纠正我,如果我错了)。 显然,网上关于Delphi Prism Inifile的信息很less。

其他方法来利用poll()函数(用户空间)?

我试图find更好的方法来处理轮询套接字(FD)的事件。 我坚持这个利用不同的pollfd这样的poll()函数: #define out std::cout #define el std::endl #define line(string) out<<string<<el class int_t { private: int _int; int _owner; public: operator int() const; int_t(); int_t(const int& in); int_t& operator=(const int& in); int_t operator|(const int& in) const; int_t operator&(const int& in) const; /* … … */ void setowner(const int& fd); ~int_t(); }; int_t::operator int() const { […]

在dpkg-architecture不存在的情况下,如何区分linux上的mips cputypes?

简单的问题:我如何可靠地区分任何Linux发行版上的mips , mipsel , mips64和mips64el ? 更长的解释: 我们为许多体系结构提供静态构build/分布独立的二进制文件(用于TeX)。 安装脚本通常运行uname -s和uname -m来确定操作系统和体系结构。 然后根据该决定从服务器获取二进制文件,因此需要可靠地工作。 它确实如此。 除Mac OS X 10.6和Debian之外几乎所有地方。 Mac将在运行64位应用程序的操作系统上报告i386 ,而Debian则报告32位操作系统的mips64 。 mips64上的 Debian可以正确地报告处理器types,但这对我来说至less有两个原因: 操作系统是32位的,而不是64位,正如名字所暗示的那样。 它运行在小端模式。 Debian称之为mipsel ,而不是mips 。 它可以经常切换,但是操作系统只能运行在一种模式下,而且mips软件通常与mipsel不兼容。 以下是系统命令的一些输出: $ file my_binary_name my_binary_name: ELF 32-bit LSB executable, MIPS, MIPS-I version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.18, with unknown capability 0xf41 = […]

Shell格式化语言

在Linux上,控制台应用程序可以格式化其输出。 他们可以设置字体颜色,设置背景颜色,并可以在控制台上放置标志。 例如,使用它就可以在控制台中实现一个俄罗斯方块游戏。 我想知道如何做到这一点。 我认为他们使用输出标记语言或其他东西。 谁能告诉我哪里可以了解更多关于这个? 非常感谢!