General :: Errors Executing Shell Script: "command Not Found" And "no Such File Or Directory"
Jan 14, 2011
A colleague gave me a shell script ("dti_motion") which needs to be run from the directory containing all the files it works on. I want to run the same script for several different directories. But I don't want to have to cd into each directory, run the script, wait for it to finish, and then cd to the next directory (there are 52 to do altogether).
So I wanted to write a very simple script that will cd to each directory and perform the script there, before going on to the next one. My colleague's script ("dti_motion") is stored in my home/bin/ and is executable. My home/bin/ is in my path, as verified by echo $path. When run from a directory containing the necessary information, the dti_motion script works perfectly well. I wrote an extremely inelegant script called "dti_motion_do_all" which is also stored in my home/bin/ and executable:
#!/bin/sh
#Get motion information for each subject, using Mark's script, called dti_motion
cd /imaging/cr01/PD_DTI/C_10/12x5
[code]....
I know there will be more elegant ways to write this script with loops, rather than simply using cd, but for the moment, I just want this to run, until I have learnt to use loops properly. how to correct either of those "command not found" or "no such file or directory" errors, given that both the original dti_motion and my dti_motion_do_all script are in my /home/bin/ (which is on my path) and both scripts are executable?
I tried to execute a shell command by M-! cmd RET but it did not work.M-! does not turn up in the microbuffer no matter how many times I press Alt+!.But if I go to Tools menu and select Shell Command... option then it writes M-! to the microbuffer and everything works fine.What is the problem here?
-the command to copy the file Practice.txt to a new name of Myfile.txt while in the home directory-found -command to create a directory in the home directory-found -say i just created a new directory called "test". whats the command to delete the test directory.-found -command to create a blank, text file without using an editor. -the exact syntax in Linux you would need to rename the file to a new name-found
My present working is Code: linux:/home/anisha/downloads/mapnik-0.6.1/demo/c++ # Now I want to run "python scons/scons.py" located in Code: linux:/home/anisha/downloads/mapnik-0.6.1/ #
I tried Code: ../../python scons/scons.py From the above stated PWD but it resulted in the following: Code: bash: ../../python: No such file or directory What is the way to execute a file of some other directory from the PWD!
what we are trying to do is, to let the customer click a button in the web browser, and then the web server to call a shell script to do the work. The output from the stdout && stderr of the script should be displayed in the web browser once finished or timeout, along with the exit code of the script.
The shell script is however not on the web server, but on another app server. So to call this script from the web server as the identity 'tomcat':
Code: $ sh appuser@app-server:$appbin/app-script
The .ssh/id_rsa.pub thing is done, and we have no problem doing this in the command line so far.
Our loaded ex-colleage has left us the webpages (jsp) with code like these:
Code: <%@ include file="jsp_functions.jsp" %> <% String cmd = "sh $appbin/app-script"; ExecResult r = new ExecResult();
I installed Ubuntu 10.10 beta yesterday and most of it is working very well. However, I ran into a problem with permissions today.I have a HDD containing my home folder and a HDD containing my data folder. The HDD with the data folder is mounted on /media/data/data_1.
I made sure I had set a+x rights on the file, tried executing it as root but the permission error stayed.When I copy that same file to my Desktop folder I can perfectly execute it.When it's located on the other hard drive I can't. I tried several command line scripts and they all work when I execute them from my OS hard drive,but not from another hard drive.
I am working on some homework, however i am not here to be spoon fed. I am trying to get the numerical modification date of each file in a folder. Ie lets say there is a file called bob and it was modified 2006-11-23. i want to get it into a variable as 20061123.
Now i currently have this code:
Code:
However for some reason my output is:
Quote:
See how the 2011 has been placed next to it? i ran it with -x and saw this:
Code:
However i do not know how to find a way around this?
I have requirement to delete some log files from a directory if a string"deletethisfile" is found.Then restart the application servers.1. Search for the string ?deletethisfile? in server.log file under a directory, If found 2. Stop that particular server.3. Delete the log file 4. Restart the server.
Code: mock rebuild -r fedora-15-i386 rpmbuild/SRPMS/deadbeef-0.5.1-1.fc15.src.rpm and getting following error in /var/lib/mock/fedora-15-x86_64/result/build.log: checking for intltool >= 0.40.0... ./configure: line 22040: intltool-update: command not found configure: error: Your intltool is too old. You need intltool 0.40.0 or later. code....
I want login.sh shell script executing automaticaly whenever i open the console..?and also logout.sh shell script executing automaticaly whenever close the console.
i have n files and each file has 5-6 .sql files.Now I need to wrie a shell script that executes all the n files in parellel and for each n file the .sql files sequentially.eg
I have a php file that I need to execute via a cronjob. This file should be run by the www-data user as its a file in my /var/www/project folder. When I run this file under root (php -f cron.php) everything works perfectly, but I want it to run under the www-data to be safe. Before I run it vai crontab I tried it via command line as the www-data user and I receive errors:
Fatal Error: Allowed memory size of 8388608 bytes expired (tried to allocate 232 bytes).
But when I run it as the root user I get no errors and everything works correctly. The file cron.php is used to process automated tasks in my CRM. So I don't really want to have the root user running a crontab every few minutes for this.
Must the www-data user be given more permissions? I am using Ubuntu 6.06LTS PHP - 5.1.2 Apache - 2.0.55 MySQL - 5.0.22
I have this scenario, where in I'm calling a shell script inside another shell script. The only criteria here is that the embedded script will have 654 permissions and the master script should be able to execute this embedded script. The sample code is given below:
The test.ksh which has 654 permissions is called by the main.ksh script and when I try to run it using ./main.ksh, it fails with the error "Execute permissions denied."
I've been looking around the net for executing a shell script. My basic understanding is that after setting executable permissions and providing a path (#!/bin/sh) in the first line of the script, I can type ./myscript to execute instead of sh myscript. This is not working for me. I can run "sh myscript" but not "./myscript" even though I know for sure I have across the board execute permission and my sh path is correct. I'm working on a redhat linux station.
I'm relatively experienced with UNIX and Linux, but this has me thrown for quite a loop, and it seemed like such a simple question. How would I go about finding the newest file in a file system? I thought something like:
Code:
ls -ltr `find /usr -type f`
would work, but I seem to be exceeding the argument maximum for ls:
ksh: 0403-029 There is not enough memory available now
I thought something involving xargs might work, but I really suck with that command.
I need to remove a large binary file(PDF file) from a large log file which is generated daily.This is seriously hogging space on our servers.I need to remove the large PDF from the logs to make the logs smaller and manageable
I need to take out the texts (or binary file) between the strings
<my:PDF> and </my:PDF> <applicationForm> and </applicationForm> <image> and </image> <extractedSignature> and </extractedSignature>
I am not sure whether sed utility can do this, these are large files and need to be pruned .I am not seeking logrotation advice just a script or command that can strip these large logs of texts between the characters above . I am not sure how to do this.These files are rather large.I am not sure how to achieve this with sed , tail, head , tr or any other facility .
I'm using a new Distro and after installing it and randomly searching for help on websites on how to install a .Deb file using dpkg at the konsole/terminal it says Bash : dpkg: Command not found . how is this possible ? Do I have to know about all the packages in the package manager to install this. slight difference for me ... knowing what I have and knowing if I need Apr93-323? (whatever) installed first or not ? The only thing I know is that I have the Iso image installed ... which is my linux distro . Where to go from here? because I usually go to a website site to find Software to install ...if I need it .back to the basics
find /var/spool/mqueue -group abc -exec rm -rf {} ;Using above command , I delete all the files belong to group abc.Now the problem i face is that the this command gives error that some files are missing . And this error occur because after creating list of files, it pass that list to rm -rf but till that time sendmail process queue and some of files disapper from /var/spool/mqueue.
I'm running Fedora 10 [KDE] on an Acer laptop and am having problems configuring "hot keys" for it. First thing that needs to be mentioned is that the hotkeys used to work when I was running it on Gnome without me having to do anything. I assumed that this will be the case with KDE too. In any case, I think driver installation is supposed to be quite straight forward. There are two packages: acer_acpi and acerhk and different installation instructions for each one of them. The problem I am having is when I run the makefile script for either one of these, I get the following output in the terminal:
Quote: Makefile: line 5: KERNELSRC?=/lib/modules/2.6.27.9-159.fc10.x86_64/build: No such file or directory Makefile: line 6: KERNELSRC: command not found Makefile: line 6: KERNELSRC: command not found Makefile: line 6: shell: command not found Makefile: line 6: shell: command not found Makefile: line 8: KERNELVERSION: command not found [Code].....
I think build-essential and some other packages are normally needed, but since you can't get them for Fedora (?), I groupinstalled "Development Tools" and some other group.
I have written the following script in my linux server to add users for LDAP database.But i can't able to run this.
The script is as following
#!/bin/bash echo "Mention the username which you want to convert LDIF format" read username if ["$username" -e "/ldiffile/passwd"]; then echo "Username already exists" else cat /etc/passwd | grep -i "$username" >> /ldiffile/passwd fi The output which i got : . ldapadd.sh Mention the username which you want to convert LDIF format yal2361 -bash: [yal2361: command not found
I had edited the bashsr file wrongly in my ubuntu while trying to put a "export" command in bashsr for javac. Next when i am writing sudo , its saying : Command 'sudo' is available in '/usr/bin/sudo' The command could not be located because '/usr/bin' is not included in the PATH environment variable. sudo: command not found
I wonder if there is anyway to make a user-defined bash shell function global, meaning the function can be use in any bash shell scripts, interactively or not. This is what I attempted:
I am trying to run a script called install.sh as follows: I get a jar file, and extract it using the command: unzip filename.jar -D path/to/files then I navigate to that directory where I extracted the files, and run the command: sh install.sh (where install.sh is one of the files that has been extracted in that directory using the above unzip command.) running this command gives me an error:'nstall.sh: command not found.' among other errors in the script ( from that portion of the script that should not even be executed, which is really weird). However, instead of unzipping the jar file, if I just copied the same install.sh file to that folder, and ran the 'sh install.sh' command, the script runs fine.