I am using embedded Linux. File open is successful. The file has all the permissions. It is present in current directory too. The size is about 27KB. But s.st_size says it is zero.
Using awk I pull the first field of a random line from my datafile.myvar1=`awk -F" " 'NR=='$randline' {printf "%s", $1}' myfileThis works fine. The problem is there will be empty lines at the end of the file. Rather than using awkto filter out blank lines I would like to figure this out first.So I test $myvar1 for a blank string after setting $randline to one that I know is blank:test -z "$myvar1" && echo "true" || echo "false"But, this returns "false"? So the string is not zero length. Why? It's a tab-separated file. Is awk storing the tab with the $1 field or something.This is where I get headache. I try to echo my variable to see what it looks like.
echo "$myvar1" outputs: nothing echo "My variable is [$myvar1]" outputs: [y variable is [
Why is the closing bracket at the beginning? What character could be stored in $myvar1 that would do such a thing and how did it get there?
I am a final year student doign Computer systems engineering and just been introduced to linux. While still strugling to catch up with the commands, I am now given an assignment under shell scripting.I seriously am strugling to understand this question, can you please assist me.Here follows the assignment:
Operating Systems III Some tips e.g. (test if a file is empty, if it is then display "file is empty" otherwise display
I'm using rmdir(), and everything goes ok if the directory is empty, ?how can I remove the entire tree when i have other files or directories in the folder that I want to delete?I've read about using "system(rm....)" but i REALLY want to do this without it, is it possible?
I tried to find out how awk works with multiline strings. I found this. I hope it will be useful for somebody. 1. I know that awk can searches simple patterns like '/^one/'
Code: s="one two three" echo $s | awk '/^one/'
2. I know that "Awk can handle multiline records by specifying the field separator to be a newline and set the record separator to an empty string." I've found it here
On that site I want to run a little javascript that verifies that the site was accessed as "Website1.com" and not "dev-Website1.com"
If it was accessed correctly, nothing happens. If it was accessed incorrectly, it displays an error saying "You are trying to access this site incorrectly."
I have a large file that a process writes to. I would like to empty that file. If I delete it the process will stop writing to it. Just flush the content but keep the file.
I was trying to list sudo users in a Linux Machine,
[root@redhat ~]# grep -v -E '^#' /etc/sudoers root ALL=(ALL) ALL %work ALL=(ALL) ALL %dilipvp ALL=(ALL) ALL
where work is a group and dilipvp is user. Can you help me in creating a better script which can list the members of the group work as well. and why I am getting empty space in between.
i m using atoi() to convert char value to int. and then passing that int as a swtich variable.switch goes in a case and exectuing that particualr function but returning 0 value....for example: i am finding no of process() and system up time().when switch program goes in system up time it gives right values means correct no of days, hrs , min and sec but when it goes in no of process() it gives 0 answer.
I need to spawn 2 processes in parallel and each takes an hour or so to finish. Is the following one of the correct ways of using `at` in a script run by crontab?
Code: #!/bin/bash # define the env var, cd, etc... assume everything ok up to this point date +"The start time is %H:%M:%S" rm -f a.fin at now <<END_OF_AT do_a &> a.log
I'll post the entire code here, and then specifically highlight what is just failing in a fashion I'm apparently incapable of fixing a few hours later:
Code:
#!/usr/bin/expect # The script should be called with a file in the directory called sshServerList # That file has the following format: # Line # | Contents of line
[code]....
I've had all kinds of different results and problems, but I've never been able to successfully log into multiple servers, though the first server in the list most times works okay (though might not on this iteration). I'm a bit hack and slash and I would be very greatful not only for a solution, but any tips on how I should have done this and places where I could clean up my code.
I have a directory that has a bunch of files and directories under it that I need to correct the filenames of. In fact, I plan on running this as a cronjob to keep checking filenames for certain characters. I want directories and filenames with spaces or pluses (+) to have those certain characters replaced with underscores (_). I know that this will involve sed but I'm not sure what else. A simple shell script would handle it.
I have a server client prog in which server is my 'agent' and client is 'manager'. Following is the code for both agent and manager. I want my agent to send what manager is requesting. But it is not working the way I want. The parameters which manager is requesting, agent has to send to manager but in this program result for those parameters is shown on agent's own terminal window. Where as I want them on manager's window. Secondly, there result is not correct, means it is giving ' 0 K ram and 0 no of process....
Im doing a sudoku-solver as a school assigment in Java. It is supposed to solve both 6x6, 9x9 and 12x12 boards.Im pretty much done with my algorithm(brute force), but I'm having a hard time figuring out how to calculate the right Box for a Square. I found this snippet:
Code:
// calculate BoardPos for index, where index is 0..80 void loadBoardPosFromIndex(BoardPos &pos, int index) { pos.index = index;
[code]...
This works on 9x9 boards, but I really dont get the math behind this, and how I can create a generic rule for both 6x6, 9x9 and 12x12 boards.
I was copying an .avi file to an external hard drive and half way through the copy the drive reset and required remounting. Consequently I have an empty .avi file on the hard drive. I tried to recopy the file and overwrite, but I keep getting 'Could not write to media/harddrive/filename.avi'. I tried to rename to file to be copied but got the same response, I cannot delete the empty file either, as I get an error telling I cannot delete it. I have tried to do this as the user and root with the same result.Any other file I tried to copy onto the external hard drive is fine, just this one zero length file and the file I was trying to copy, the original of the file. I also tried to delete the file on another computer but couldn'tExternal hard drive is a WD elements ntfs, which works great except for this glitch.
Does anybody know why isn�t anything on the /var/log/boot.log file. After the boot I saw some services that fail to load and looking for more detail data on the boot.log file I couldn�t found anything this file is empty. This is My syslog.conf file:
I have setup a local repository containing several .rpm files. I created a comps.xml file outlining the category and groups for the local repository. However, when I issue the yum grouplist command, I get the following error:
Failed to add groups file for repository: localRepo - comps file is empty/damaged
However, if I try to install one of the the packages in the repository, it works just fine.
Here are the steps I took to create the repodata:
The comps.xml and repository are stored in the directory: /var/www/html/myrepo/x86_64 cd /var/www/html/myrepo/x86_64 createrepo -g comps.xml .
I having been searching for a way to create an empty or blank iso file, so that I can mount it, and have a backup application think it's a blank CD. I am tired of wasting CD's by having the application write a recovery CD, just for me to turn around and export it to an iso image to be stored in a online archive, and then throw away the physical CD.
I'm trying to write shell script to use etc/init.d In fact, my application has written by java and I have made the fat.jar (etest.jar)file as executable one and after I wrote the small script to run it background (etestruner.sh) that is,