I am trying to get a checksum for a file in a subscripted variable in a bash script. md5sum outputs a checksum and the name of the input file. For example:
Code:
eval CSUM$K=$"(md5sum file)"
This might return something like this:
Code:
3cff5d5c0113959d0be62be34b97e05c file
I want to assign just the checksum to the variable in my shell script and omit the file name that follows. Is there something besides md5sum that will generate a checksum? Or if not, then I was thinking I might be able to extract the checksum without the file name using sed.
I created a file holding all the md5 values of my files to find duplicates as follows: find /mnt -type f -print0 | xargs -0 md5sum >> ~/home.md5
I then tried to find duplicates and do ls -l on the result in such way: cat ~/home.md5 | awk '{print $1}' | sort | uniq -c | sort -nr | awk '{print $2}' | head -n 10 > ~/top10.md5
Now I attempted to do an ls -l on the files using the command: for i in `cat ~/top10.md5`;do grep $i ~/home.md5 | while read checksum path; do echo "`echo $(printf '%q' "${path}")`" | xargs ls -l; done; done
This works well on most files, however it does not work when filenames have special letters in them that gets escaped such letters with accent etc. These become for examle 303.
Are there any ways I can use the escaped 303 strings with path names, or any better way I can do this?
I am new to shell script and need to edit an xml form script. The XML file is something like code...
If the user selects element1, the script should modify only element1 values and not element2 values. I need it to be done from bash script. I can't use python or perl for the same. Please provide me a way to do so.
if I can create a bash script that once executer will edit or replace a line a in a file this line is the first one and its just one character that needs to be changed from a 1 to a 0.
How do I go about this? it is for a game called EVE Online, heres what my .sh look like atm
#!/bin/sh echo fixing prefs.ini #fix for prefs goes here echo starting eve eve
I've been trying to write a bash script that will change the gconf settings for docky. The goal is to make it have a setup similar to Elementary OS or Pinguy OS... that means one docky instance on the bottom and one on the left. I just can't seem to get the commands working right at all. This is one setting I have been trying to change but every time I get an error about primitive types.gconftool --type List --set /schemas/apps/panel/general/toplevel_id_list [top_panel]
I would like to know how do I print the line # in a script. My requirement is, I have a script which is about ~5000 lines long. If there are any errors happen I just exit. And I would like to add the line # of the script where the error happened.
Code: #!/bin/bash trap "echo 'you got me'" SIGINT SIGTERM # to trap ctrl+c echo "Press ctrl+c during 5 sec loop" for ((i=0;i<5;i++)); do
[Code]...
How come code behaves normally and stops when ctrl+c signal is caught and resumes, but after I use at least one timeout read in the code it looks like, if signal is caught again it doesn't pause the execution but skips the loop. If you remove -t (timeout) option from the read, both loops look the same!
I have made a simple bash script through which i can add, del, edit user from certain file using different CASE variables. like case 1. adduser 2. del user 3. edit user
Now i want to add a exit CASE like 1. adduser 2. del user 3. edit user 4. exit
Now i want to make a script such a way that, if user input is 4 then only script quit. I used with exit function also but it didn't work. if user press ENTER or other keys then also it quit the program.
Now in my bash script, I want to get the output /home/user instead of $HOME once read. So far, I have managed to get the $HOME variable but I can't get it to echo the variable. All I get is the output $HOME.
I have written quite a few separate bash & scripts and php scripts that up to now I have run from cron jobs. However I have to estimate how long each takes to run, before running the next and so it probably takes much longer than necessary to run them all. They have to run in order.
Now there are so many I am thinking it would be better to have a master bash script that would run one after the other, but I am not sure how to get the master script to wait before starting to run the next script. Is this possible and is there a command that will make the script wait between bash and php scripts , for them to finish, before running the next?
I think it would be better to count the len and remove 3 chars to right to get the extension, but it can be macintosh filenames with have 4 chars for extensions.
I need to rename the resulted searched files from a loopI have the following code:
find . -name DOC* | while read i do find $i -type f -name '*.txt' done
basically, I am searching for all txt files inside any folder starting with DOC name.this code is working fine with me.I need to rename those .txt files to .txtOLDOS: Ubuntu 10.4Bash shell
1. In Windows platform +MASM 5.0, run "command" and use "debug.exe" to see what would happen. As step by step check, I see B800:000 is not modified as expected.
2. In Ubuntu 10.04 + dosemu 1.4.0.1, run the program in two ways:
a. If exec dosemu in command line as "$dosemu -dumb", yes, it's in shell mode. and then use debug to check, "B800:0000" can be modified as expected.
b. If exec dosemu in command line as "$dosemu", and run the program again, the symptom is as same as 1.(pls see attachment picture).
3. In Windows, I replace "mov ax,0B800H" to "mov ax,2000H" and try again, it would be edited well. So I wonder if it is coursed by "B800" segment address.
For gcc, it seems that there are multiple include paths like /usr/include and /usr/src/linux/include. How do I check the current include path for gcc via command line? How do I edit it?
I have a webGUI in php where users can make certain settings. How can I edit a file on a remote server from my php webserver? Currently I use my FTP client, vsFTPd and a chrooted user in a specific directory where the file resides. I think this is pretty save as long a nobody else uses my FTPclient. How can I make changes to this file on the remote server from within my php-code on my webserver ?? (so that not I need to make the changes but my users can do it from a html-form) I found this but the credentials for the FTP-connection are plain :
<?php $file = fopen ("ftp://loginasswd@server", "w"); if (!$file) { echo "<p>Unable to open remote file for writing. ";
[code].....
I use https for the webGUI, but I guess this does not mean the connection to the remote server will be encrypted also ? Can I use my FTP-user (has no shell) from within php to edit the file ?
I have a few small still images of around 300 bytes each that I created under Windows many years ago, I'd like to:
1) change the colour of some pixels on each and 2) make them the exact same size but I do not want to learn Gimp to do this since I have no other use for it.
Could someone show me the sequences of commands in Gimp GUI that will do the job?
I am trying to write a bash script that sources another bash script. Essentially, I need a few lines to check to see if a certain variable is set. If not, I set it manually, and then source a scripts with that variable in the path. I wrote a test script to try it, but for some reason the last line does not work. Here is what I wrote:
#!/bin/sh source ~setupdir/setup.shrc #just a test, this line works echo ${#SETUP} # prints 0 if setup is not set, which it isn't if [ ${#SETUP} -eq 0 ] then SETUP="~setupdir" fi echo $SETUP # prints ~setupdir
I want to edit linux kernel source code in MS Visual Studio. I saw the code and these are c files but there is no project file that i open it and whole project opens up. I can open each individual file but not the whole project.
I am trying to write a script to edit text files formatted like this:
Code: (MCAL@Contig766:0.30207,CGIG@CVIR_Contig1014:0.13977,(HASI@HDIS_Contig573:0.16828,(CAPI@LCIN_5594371:0.36581,CFOR@FQH745302RIQ7Y:1.91244)0.160:0.00019)0.939:0.15648); There are never line breaks or spaces in the actual files.
I want to delete all instances of the character "@" and everything between it and the next "," (including that comma) or the next ")" (including that close parentheses) whichever comes first. My desired output file would be like this:
Code: (MCAL,CGIG,(HASI,(CAPI,CFOR)0.160:0.00019)0.939:0.15648); I figured out how to do this using sed for either "," or ")" but both looking for whichever comes first.
I've been using a script to compare the MD5sum of a CD and the ISO used to burn the CD. This script works great in Fedora 8 but in Fedora 12 it returns a different check sum for the CD and ISO.
Code: #Compares the checksums of an iso9660 image and a burned disk. #This script is released into the public domain by it's author. if [ -n "$BASH" ]; then shopt -s expand_aliases fi