我在一个满是JPEG图像的目录中搜索:
tar cvfz myarchive.tar.gz mydirectory
当我卸载存档时:
tar xvfz myarchive.tar.gz
我得到一个错误:
tar: Unexpected EOF in archive
查看输出,它在一个特定JPEG图像的中间失败。
我做错了什么?很有趣。我有几个问题可以指出问题所在
1/你是在同一个平台上完成的吗?它们可能是不同版本的tar(例如GNU和旧unix)?如果它们不同,你能把它卸到你穿的同一个盒子
我正在编写一个OpenGL游戏,希望它能同时适用于linux和iphoneOS,我基本上希望能够使用OpenGL ES 1.5头文件进行构建,并在我的linux桌面上运行它。我能做这个吗?IE,我只想使用OpenGL和OpenGL ES之间常见的API调用子集
执行上述操作并使用系统中的普通libGL.a进行链接,可以获得我的屏幕,但除了更改场景背景颜色之外,我似乎什么也做不了。我完全做到了这一点,而且效果很好
有许多OpenGL | ES扩展在标准OpenGL上不可用,但在低规格平台上很好。g
#/bin/bash
#像编写more命令一样编写shell脚本。它询问用户名和
#在命令提示下显示文件名,仅显示文件的15行
#一次删除一个文件。
# -------------------------------------------------------------------------
#版权所有(c)2007 nixCraft项目
#此脚本在GNU GPL 2.0或更高版本下获得许可
# ----------------------------------------------
我刚刚编写了以下shell脚本:
cd /home/firefli/webprojects/project1
svn checkout file:///home/firefli/svn/project1/trunk .
rm -rf /home/firefli/public_html/project1
svn export . /home/firefli/public_html/project1
当我执行提交并手动运行脚本时,它确实可以工作,但我仍然有几个问题
我可以运行bash脚本,还是必须
鉴于这两个文件:
$ cat A.txt $ cat B.txt
3 11
5 1
1 12
2 3
4 2
我想找到A中的行号,但B中的行号不是。
它的unix命令是什么
我试过了,但似乎失败了:
comm -3 <(sort -n A.txt) <(sort -n B.txt) | sed 's/\t//g'
comm-3你可
嗨,我有一个文件try.SPEC。此文件包含一个单词“Version:1.0.0.1”。现在我想写一个shell脚本,它将从键盘读取版本号并插入文件。例如-如果用户输入的版本号为2.1.1.1,则该文件的版本号将为“2.1.1.1”,而不是“版本号:1.0.0.1”。就像这样,我希望无论知道规范文件中的版本号是什么,我都必须能够更改
谢谢
Sunil Kumar Sahoo您可以使用read获取用户输入
#!/bin/bash
read -p "Enter version: " version
我编写了一个系统调用,打开一个目录并获取文件对象和dentry结构。我正在尝试使用list_for_each()宏列出所有条目,包括子目录中的条目。问题是它只显示dentry缓存中当前的内容。如果我用nautilus打开目录,然后重新运行系统调用,所有条目都会列出。有没有办法检查条目的确切列表或刷新缓存
f = s_open(tpath);
fle = fget(f);
d = fle->f_path.dentry;
list_for_each ( dentry ) {
.
在编译我们的项目时,我们创建了几个档案(静态库),比如liby.a和libz.a,每个档案都包含一个定义函数y_function()和z_function()的对象文件。然后,这些档案被加入到一个共享对象中,比如说libyz.so,这是我们主要的可分发目标之一
g++ -fPIC -c -o y.o y.cpp
ar cr liby.a y.o
g++ -fPIC -c -o z.o z.cpp
ar cr libz.a z.o
g++ -shared -L. -ly -lz -o li
我有一个.xsl文件
在此文件中,我要打印“(…)
(...)
对于数据,您可以使用disable output escaping=“yes”显示
我有一台运行Linux的专用服务器。
操作系统运行以下组件(我们称之为组件):
PostgreSQL
访问规则:仅限员工(当然还有本地访问)
Apache
网站
公共站点:每一个
私人网站:仅限员工
工作人员通过WAN访问这些组件,我想知道应用这些访问规则的最佳、最简单和最灵活的方法是什么(也是集中的,因此我不必配置每个组件)。
当然,服务器将运行更多的东西,但我想我会管理的时候,我会有一个以上的解决方案
我想了一些办法:
VPN:这将不起作用,因为我有一个必须向全世界开放的公
在Linux中,在sched.h中定义了一个sched_setaffinity()函数,但在Mac OS X 10.6 pthreads实现中,我似乎找不到类似的函数。。。如果无法设置关联,那么OS X中的默认策略是什么?Mac OS X具有,并且您可以将其与pthread ID一起用作线程策略集(pthread\u mach\u thread\u np(pthread ID),但是,据我所知,没有像sched_setaffinity这样的API。怎么回事?我查看了Mac OS X 10.6 S
我使用的是Red Hat 5.6,我已经为我的Unix用户配置了VNC,没有任何问题。我可以登录到它,它默认为Gnome。KDE安装在机器上,我想使用它。下面是我的~/.vnc/xstartup文件
我试着用“startkde&”替换下面的twm,但没有成功。Gnome似乎是默认桌面,即使下面显示了twm,即使我更改了它,它也无法工作。即使没有列出桌面,Gnome仍然会启动
有人知道为什么会发生这种情况,以及我如何启动其他台式机吗
#!/bin/sh
# Uncomment the follo
我正在尝试实现一个脚本,该脚本在日志文件中等待特定消息。一旦消息被记录,我想继续脚本
下面是我正在尝试的tail-f和grep-q:
# tail -f logfile | grep -q 'Message to continue'
grep永远不会退出,因此即使文件中记录了“继续消息”,它也会永远等待
当我在没有-f的情况下运行此程序时,它似乎工作正常。tail-f将读取文件并显示稍后添加的行,它不会终止(除非发送类似SIGTERM的信号)grep不是这里的阻塞部分,tail-f是grep将
我想用linux控制usb灯,通过打开和关闭它的电流
基本上,任何解决方案都需要在中插入值
/sys/bus/usb/devices/..../power/level
这将是一个伟大的想法,但没有办法找到我的设备是哪个设备。我尝试了lsusb,探索/proc.bus/input/devices,甚至有一点C代码[4],但似乎与我的设备无关
为了提供更多信息,它是一个带有开/关开关的旋转灯,但除了电流外,它似乎与计算机没有任何交互作用
注意:我已经在[1]、[2]甚至windows([3])中找
我是Linux内核的新手。
我知道有两种情况
1.进程上下文,在用户空间或内核空间中运行(例如:作为系统调用的一部分)
2.中断上下文
内核线程(与任何用户线程无关,例如:flush任务)在什么上下文中运行
Linux内核中除了进程和中断上下文之外还有其他上下文吗?有些任务既不是通过系统调用调用也不是在处理中断时调用的。这些被当作纯粹的内核上下文处理,例如swapper、INIT_任务等,它们没有相应的代码在用户空间中运行 内核线程在内核空间的进程上下文中运行。虽然也有一些内核线程处理中断。他们
我以zip文件的形式从下载了git源代码
我将它解压缩到/home/Desktop/denis/git(使用Ubuntu)
现在教程说我应该跑步
./configure --prefix=/home/denis/git-static CFLAGS="${CFLAGS} -static"
作为构建git的一个步骤,从上述文件夹中删除
但是git源代码的根文件夹中似乎没有我可以运行的配置文件(只有configure.ac,我怀疑这不是我想要的)
我错过了什么?如何手动构建git
我这样做是因为我试
如何更改Tomcat中的时区?其中一个webapps(Solr)使用的时区不正确(与MySQL时间戳相比),我认为更改Tomcat的时区会有所帮助。谢谢 除非tomcat有个人TZ环境变量,否则它会使用/etc/localtime,在我的系统上它是/usr/share/zoneinfo/America/New\u York的副本
Tomcat的个人时区将以如下形式在其启动脚本中指定:
-Duser.timezone=GMT
如果您指的是存储在Solr中的数据的时区。。。Solr中的所有日期/时
目前我们有回购cos,这是我们的主要回购。我们还有回购cos2,其中包含截至我们分出之日cos的所有承诺。它们是完全独立的回购协议。在正式迁移到cos2之前,我们需要将cos中的更改提交到cos2,但在此期间,我们需要cos2中cos的提交
Repo Cos A---B---C---D---n
| | | |
Repo Cos2 A---B---C---D---n
或
如何将cos中的特定提交或合并转移到cos2
cos2中的任何内容都不需要转到
我总是忘记一分钟前编辑的文件,所以我输入find-cmin 1或其他一些值,但它精确地工作了1分钟。我不得不尝试查找-ctime 2/*或3,4…*/
然后我找到了另一种更好的方法:
touch -t 12251134 empty /*similar format which 5 or 10 minutes ago */
find . -newer empty
我可以使用date-d'-5分钟+%m%d%H%m为我计算时间。我想知道是否有一个简单的方法来找到文件访问1,2或3。。。分钟前。只需
在linux62上运行二进制文件时,该二进制文件占用了大量内存。
这尤其发生在加载java之后。同样的事情在早期版本的Linux上运行良好,内存更少
所以我想知道,是否有任何工具可以列出运行二进制文件的已加载库及其内存大小。
在当前正在运行的二进制文件上,我没有任何实用程序来执行此操作。
ldd和objdump仅从对象获取详细信息,而不是从正在运行的进程获取详细信息
由于java库只有在我的程序启动并运行后才被加载(加载java是可选的),因此我需要一个工具来从运行的二进制文件中列出一组库及其内
我已经尝试了好几天了,但仍在挣扎
该脚本的目标是在多台服务器(尤其是29台)上执行实时日志监视,并关联服务器之间的登录失败记录。服务器日志将在每天23:59:59压缩,新日志从0点开始
我的想法是在每台服务器上使用tail-f | grep“failed password”| tee集中式日志,通过循环激活所有服务器名称,在后台运行,并将登录失败记录输出到集中式日志。但它不起作用。它创建了很多守护进程,一旦我终止脚本,这些守护进程就会变成僵尸
我也在考虑每隔几分钟做一次tail。但随着日志变大,
通过交换和终止,我的意思是,如果进程即将被交换到交换空间,或者(通过OOM killer)终止以释放内存
linux内核遵循什么算法
例如,进程A需要额外的内存,进程B被选择进行交换或终止(如果交换空间已经被占用),但进程B仍然有一个阻塞线程
a、 )进程B是否会被交换或终止,而与阻塞线程无关
b、 )若否,这类案件如何处理
如果我的示例不太可能出现,请提供任何见解。是的-您需要阅读分页虚拟内存,正如@CL所建议的那样。进程不会全部交换和交换=终止
如果由于特定的API请求或其OOM算法,操作系
标签: Linux
rootfedoraprivileges
我已经安装了flashrom软件。当我尝试运行sudoflashrom命令时,它会给我“无法获得i/O权限(不允许操作)。您需要是root”错误。我还尝试了su命令切换根目录并再次运行。我还尝试了sudo-I命令以root用户身份登录。然而,它们中的任何一个都不起作用
#if defined (__OpenBSD__)
msg_perr("If you are root already please set securelevel=-1 in /etc/rc.securelevel an
我需要在linux(确切地说是debian)中编写一个程序,如果USB设备没有通过特定的过滤器,就禁用它。例如,该程序可能被设置为不允许网络摄像头、U盘和键盘,启用鼠标和打印机(通过usb)。过滤器可能在运行时更改。例如,程序可能会收到一条启用usb记忆棒的消息,它应该在不重新启动系统的情况下做出响应。该程序是用python编写的,但嵌入c代码(或其他代码)也是可以接受的
我尝试过的
我尝试过许多方法,但其中有些方法与编程无关
首先,我想搞乱乌德夫。我可以在插入设备时监视活动并写入过滤器。过去有
我有一台ubuntu机器,还有一个用OSX编写的命令行应用程序,它使用FBOs在屏幕外呈现一些东西。这是代码的一部分
this->systemProvider->setupContext(); //be careful with this one. to add thingies to identify if a context is set up or not
this->systemProvider->useContext();
gle
我想在变量中获取sysdate-1和sysdate-2并回显它。我使用下面的查询,它将今天的日期作为输出
#! /bin/bash
tm=$(date +%Y%d%m)
echo $tm
如何获取昨天和昨天日期的前一天?您可以通过以下方式获取昨天日期:
date -d "yesterday 13:00 " '+%Y-%m-%d'
前天:-
date -d "yesterday-1 13:00 " '+%Y-%m-%d'
这是另一种方式
昨天,
date -d '-1 day' '+%Y%d
我遇到一个问题,需要在另一个变量中展开一个变量,如下所示:
var1=abc
var2=$var1/pqr
echo ${!var2}
这里我希望输出是abc/pqr,但没有得到它,请帮助。
var2值只是这样,我不能用双引号括起来。在这种情况下,您不需要取消引用:
$ var1=abc
$ var2=$var1/pqr
$ echo $var2
abc/pqr
将变量指定为不带$符号的值时,可以取消引用。例如:
$ var1=abc/pqr
$ var2=var1
$ echo ${!va
我正在使用AWS命令行工具运行一个简单的S3复制命令。我特意输入了一个不存在的bucket名称来测试失败并相应地处理它们。但是,在成功复制到S3的副本和未成功复制到S3的副本上,我的返回代码都是0(零)。这是正常行为还是错误?如果这是正常的,那么如何在不必检查(即grep)字符串值的标准输出(即“上载失败”)的情况下捕获错误
成功复制
[ec2-user@ip-10-0-10-68 ~]$ aws s3 cp puppetmaster-bootstrap.sh s3://puppet-enter
我有一个MIPS板AR9341,我想在其中添加对从u引导本身而不是从内核启动i2c总线的支持
我还有两个免费的GPIO,可用于SDA和SCL Pin
我还阅读了一些文档和用户指南,关于如何在u引导中添加支持位的i2c总线,但没有得到正确的想法
关于如何从u引导使用GPIOs添加对位碰撞i2c总线的支持,有人有任何文档或想法吗
如果有人对此有想法,请尽快帮助我
我曾尝试从u boot用两个LED设置并清除两个GPIO,它工作正常,没有任何问题。现在我想将这两个GPIO连接为SDA和SCL行,用于软
标签: Linux
cryptbusyboxpbkdf2password-hash
我需要在Windows应用程序中生成密码哈希,然后将它们下载到Linux设备,插入到影子密码文件中。出于市场原因,在Windows端使用PBKDF2很有吸引力,因为它提供了FIPS认证级别,但我不知道如何/是否可以在Linux影子密码文件中使用PBKDF2哈希
我知道这是一个奇怪的要求,但Windows应用程序用于离线配置RBAC
我对Linux几乎一无所知,但我的理解是我们使用Busybox(包括crypt),不支持PBKDF2
是否可以添加PBKDF2支持?如何做的指针
我最近在我的linux机器(x86_64 x86_64 x86_64 GNU/linux)上安装了Sonarqube-4.5.1
我可以使用/sonar.sh start命令启动声纳。使用/sonar.sh status命令检查声纳状态时,它会显示SonarQube正在运行(18493),但当我尝试打开仪表板url时http://ip-address:9000它在浏览器上显示“连接被拒绝””消息。
运行mvn sonar:sonar-Dsonar.host.url时=http://localho
我现在正在学习git。我已经在linux中创建了git repo。请使用以下命令:
git clone --bare dev dev.git
及
现在我用另一台电脑克隆它
git clone ssh://xxx@xxx.com/git/dev.git
并推动一些承诺
我需要在linux服务器中使用我的工作目录,因此我删除了第一个dev目录,并克隆了一个新目录:
rm dev -rf
git clone /git/dev.git
但当我使用git pull时,我得到了:
# Merge br
如何在已安装的RPM软件包中进行多个搜索
$ rpm -qa | grep 'mysql' 'jdk' 'jre'
或
使用白鹭
rpm -qa | egrep -i 'pattern|pattern2|patren3'
egrep可以包含约64Kb的文本较新版本的grep包括-E开关:
$ rpm -qa | grep -Ei 'pattern|pattern2|patren3'
您还可以使用以下命令一次查找多个包:
-rpm -qa |grep -e mysql -e jre
没有一个命令在ec2机器中工作
-bash: id: command not found
-bash: id: command not found
-bash: id: command not found
-bash: tty: command not found
-bash: mktemp: command not found
-bash: $TMP: ambiguous redirect
-bash: rm: command not found
-bash: vim: command not
我的服务器有问题
当我尝试启动服务器时,它会说“设备上没有剩余空间”
如果我执行命令“df”,我会在目录中看到它(如果已满)
/dev/mapper/owegdc_vg-owegdc_logs_lv
10321208 9797004 0 100% /opt/application/owegdc/logs
当我到达logs目录时,我看到了什么
ls -lrta
total 368
drwxr-x--- 2 oweadm grpowe 16
我发现了一个奇怪的情况。我在一个项目中一起使用PHP和MongoDB,并更新了相关软件。升级后,我确实更新了新的conf文件,一切正常——除了尝试使用MongoClient类时,我遇到以下致命错误:
致命错误:未捕获错误:在/srv/http/test.php中找不到类“MongoClient”
因此,我的第一反应是检查我的/etc/php/php.ini,以确保mongodb.So被正确包含。我在其他分机行之后找到了它:
extension=mcrypt.so
extension=zip.so
如何消除路径中的冗余组件
例如,我想转换
/foo/../foo/bar
到
使用:
输出:
/foo/bar
根据realpath--help:
-m, --canonicalize-missing no components of the path need exist
您还可以使用更常见的readlink(感谢@pjh):
您可以通过诸如:sed's-/../foo/-/-g'之类的管道替换路径名中的向上/向下引用。请参阅。注意,在支持符号链接的类Unix系统上,“/X/./Y
我试图用我的守护进程来分叉进程,并试图在守护进程崩溃的情况下与它们断开连接。常规的os/exec是高级的,因此我选择了syscall.ForkExec并生成了以下代码:
package main
import (
"fmt"
"os"
"os/exec"
"syscall"
"time"
)
func main() {
cmd := "myproc"
binary, lookErr := exec.LookPath(cmd)
我已经下载并编译了openssl-1.1.0
我可以使用与openssl相同的exe进行加密和解密(原样)
这个openssl使用:libcrypto.so.1.1,libssl.so.1.1
当我尝试使用安装在我的ubuntu上的openssl解密时,它使用:
/lib/x86_64-linux-gnu/libssl.so.1.0.0,/lib/x86_64-linux-gnu/libcrypto.so.1.0.0
我得到一个错误:
me@ubuntu:~/openssl-1.1.0$ ope
我想要一个字符串列表,只保留列表中其他地方没有子字符串的字符串。为了举例说明,我有以下清单:
apple
applesauce
kiwi
mango
mangoes
mangosteen
oranges
pineapples
我想把它简化为一个字符串列表,列表中其他地方没有任何子字符串。因此,得出的清单将是:
apple
kiwi
mango
oranges
请注意,applesauce和pinepples被删除,因为apple在列表中的其他位置,并且是这两个词的子字符串
我发现了一个类似的
在我们的一个项目中,我们有一个技术限制,即使用ServiceFabric作为平台来运行使用ServiceFabric SDK构建的应用程序。服务结构群集将使用Windows Server 2016作为操作系统
但是,该软件还依赖于第三方产品,该产品作为Docker容器运行在Linux容器操作系统上
产品所有者希望将容器部署在同一服务结构集群上,以便于管理和监视
众所周知,Windows Server 2016能够使用Hyper-V隔离技术运行Linux Docker容器。如何配置Windows
我有共享库的头文件,但没有共享库或其源代码
我还能针对这个库编译一些代码吗
如果没有,共享库包含哪些不在标题中的信息?是。您可以声明指向这些函数的指针,然后调用dlopen和dlsym,然后离开。然而,试图以某种方式编造一个可执行或共享的库,就好像你已经链接到该库一样,是有风险的;有关详细信息,请参见俄罗斯人的回答
当然,您需要这些库本身来运行代码
但是,请注意,并非所有“共享库”都只是共享库。在某些情况下,存在一个.a文件,该文件在链接时用于在运行时除了.so之外提供一些静态链接的代码。这并不
由于某些原因,我无法删除docker图像。
这是输出
操作系统版本:
Linux localhost.localdomain 4.12.13-300.fc26.x86_64 #1 SMP Thu Sep 14 16:00:38 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
docker版本
Client:
Version: 17.06.2-ce
API version: 1.30
Go version: go1.8.3
Git comm
如何使用一个命令行提供特定大小的所有文件的列表,然后使用名称、md5和文件大小格式化文件
示例输出应该是
file1.*** MD5 value size
file2.*** MD5 value size etc.
我尝试了以下方法,但它在单独的一行上显示md5
find 'directory' -size +30000c -size -50000c |
while read filename
do ls -l "$filename" | awk '{prin
展望未来,关于GNU/Linux,只提供了Debian的一个过程
是否可以在其他GNU/Linux发行版(如CentOS 7)中安装诱惑?要在其他发行版中安装诱惑,您需要遵循“手动安装”下的步骤
2.1.4。手动安装
从bintray下载最新版本作为zip存档
将归档文件解压缩到allure命令行目录
导航到bin目录
对于Windows,请使用allure.bat;对于其他Unix平台,请使用allure
为系统路径添加诱惑
或者您可以使用*.deb文件解包/转换器您知道系统管理问题是什么吗?
我有一个进程运行在支持AVX-512的英特尔机器上,但此进程不直接使用任何AVX-512指令(asm或Intrinsic),而是使用-mno-avx512f编译,因此编译器不会插入任何AVX-512指令
然而,它正在以降低的AVX涡轮频率无限期运行。毫无疑问,有一条AVX-512指令通过库(不太可能)系统调用或类似的东西潜入了某个地方
与其尝试“二进制搜索”AVX-512指令的来源,是否有某种方法可以立即找到它,例如,捕获这样的指令
操作系统是Ubuntu 16.04。正如评论中所建议的,您可以
我得到了Ubuntu18.04.4虚拟机,并试图通过
pip3 install pycryptodome
我得到的错误是
这些包与需求文件中的哈希不匹配。如果已更新包版本,请更新哈希。否则,请仔细检查包装内容;可能有人篡改了它们。
隐窝
我尝试过清除缓存和升级pip,但到目前为止没有任何效果。如何解决此问题当下载的软件包出现问题时,会出现此问题。下面的命令将下载一个新的并安装它
pip3安装pycryptodome——没有缓存目录这不幸给了我同样的错误是在一个环境中吗?如果是尝试这个“pipe
我有一个包含大量头(.h)文件的文件夹,要安装我们的库,我需要将这些文件复制到系统文件夹中。但是,我只想复制已更改的文件。我如何使用make和cp来实现这一点,而不必使用任何其他工具,如rsync?您可以使用如下结构:
/path/to/system/header.h: /path/to/local/header.h
cp $^ $@
如果本地版本较新,则将本地标头复制到系统标头。
如果你有GNU make,比如Ubuntu,你可以创建一些奇特的函数,就像这样。
它将更新的头
我有一个csv文件,如下所示:
120,256,300
36,255,12
etc...
我想在所有行中添加一个固定字符串,如“USA”,以获得:
120,256,300,USA
36,255,12,USA
etc...
我该怎么做
谢谢您可以直接使用sed:cat | sed's/\(.*)/\1,USA/'
这里的s是替换命令,它使用以下字符作为正则表达式和替换之间的分隔符。对于正则表达式,转义括号用于创建捕获组,regex*捕获整行。对于替换,\1插入第一个捕获组,然后追加,USA文本
我在尝试使用CURL命令从Shell触发作业时收到以下错误
curl -X POST --user Myname@example.com:<APITOKEN> "https://example.com/job/Testing/build?token=TOKEN_NAME"
curl-X POST--userMyname@example.com: "https://example.com/job/Testing/build?token=TOKEN_NAME"
收