Programming :: Python: Read Through Multiple Links To Get To The Target?
May 28, 2010
say you've got the following file structure:
Code:
ls -l *
lrwxrwxrwx 1 briank cg 1 2010-05-28 15:23 a -> b
lrwxrwxrwx 1 briank cg 3 2010-05-28 15:23 b -> d/c
d:
total 0
-rw-rw-r-- 1 briank cg 0 2010-05-28 15:23 c
code....
if I use python's os.readlink on 'b', it reports what I want, which is that it points to 'c'.
however, if I os.readlink('a'), it reports that 'a' points to 'b', which is true, but then 'b' points to 'c'.... so really, when I ask for 'a', I will eventually get 'c', but python isn't reporting that.
I know I can do an if test - if os.islink(os.readlink('a')): blah blah, but is there a more built-in or one-liner way of doing this? I'm looking to get to the last file in a list of symlinks, i.e. the regular file that they all point to.
i made a program to read from a specific site whats on tv in that day.My question is if some of you have an idee how can i figure it out,what are movies,what are sports,what are shows ?
I am copying my home folder from my old computer (Ubuntu 9.10) to my new one (Ubuntu 10.04)
I thought that I would make a tar archive of my home directory (~60GB), then copy it across the network and untar it in my new home folder.
The problem is that I have several hard links (30 at most). When I try and untar the tar in my new computer it runs into errors with the hard links.
I think the problem is that it has unzipped the hard link before it's target and detected an error.
One solution is to add --hard-dereference to the tar command , this will create a separate copy of each hard link. but I would really like an exact copy of my home folder on my new computer.
Does anyone have any ideas? Either copying my home directory, or how to make tar handle hard links sensibly?
As I'm starting to learn bash scripting I'm trying to automatize some tasks I usually perform. I have a notification mail I need to send several times a day. It has this structure:
Quote:
Dear user, blah blah blah blah
You need to contact the following people:
[code]...
To replace "user", I found this:
Code:
read -p "Please enter username: " username echo "Dear $username,"
Which probe to be very useful with other simple notifications like this. But I don't know how to manage the email addresses as they are usually more than one and could vary from 1 to 10. They should appear one above the other. I found this: "Here is a little work around. The only thing the user needs to do is hit enter without anything else on a line and it will close out"
Code:
#!/usr/bin/ksh word=a until [[ $word = "" ]];do
[code]....
I tried to use it and modify for my needs but I failed, I don't realize yet how can I use it. If possible, I would like to use the until loop like the above example just for learning purposes but any other form will be accepted as well.
I have a personal wiki of notes, with now thousands of links in markdown format:
[link text](http://example.com)
but now that fckeditor is available for mediawiki (very beta), it has become much better to just stick with wikitext format. There are only a few conversions to do: tables, links, and bulleted lists. The lists are a fairly simple regex and fckeditor magically reformats the tables, so all I'm left with is the links. But I'm not a regex master. How do I reformat code...
First, I made a simply script which let me download a file from a filehosting site on my server, but I can only put one link there, so I need help how to put multiple links in.Here is my script:
For example, I have a text file with data which lists numerical values from two separate individuals
Code: Person A 100 200 300 400 500 600 700 800 900 1000 1100 1200
Person B 1200 1100 1000 900 800 700 600 500 400 300 200 100
How would I go about reading the values for each Person, then being able to perform mathematical equations for each Person (finding the sum for example)?
I'm having real issues installing 10.04 to an SSD - I had one SSD fail, and have replaced it with a brand new one, but the 10.04 installer fails at beginning to write files to the disk with this error:
[Errno 30] Read-only file system: '/target/bin'.
Curiously:
* Windows XP will install to this SSD with no issues
* I can install 10.04 to a standard HDD with no errors.
What is happening that is stopping me from installing 10.04 to this drive? I am fairly sure that there is no issue with the SSD (I have two brand new, identical OCZ Vertex II 60gb drives which both encounter this error.)
I have tried partitioning the drive using gparted on another machine, leaving 5mb free at the start of the drive, and having a single partition for /, and a 1gb swap partition. "Round to cylinders" was unchecked. The partitioning was successful, and the drives can be mounted on my other machine, but the 10.04 installer encounters the same error.
I have suspicious requests in my haproxy logs from multiple sources to the same target. I could deny them in /etc/hosts.deny, but there are too many to keep track of. Is there a way to deny all requests to a specific target either in haproxy or through iptables?
Here's an example of the request: Apr 12 15:11:37 127.0.0.1 haproxy[28672]: 41.105.42.150:27072 [12/Apr/2011:15:11:37.315] web_servers frontend_farm/######## 3/0/1/1/169 404 1073 - - --NI 3/3/2/1/0 0/0 "GET /images/comment_icon.gif HTTP/1.1"
I've commented out my amazon instance id for security purposes. The request is for comment_icon.gif which does not exist. All requests go to that. The source IPs are from different countries as well. Blocking a certain country won't work either. Basically, if there was a way to send all requests for comment_icon.gif to /dev/null or something it would work.
I have a function definition in a Python 2.x script which take a tuple as one of its arguments, but 2to3 has no answers nor any of my searching on how to represent the same in Python 3.x
i am using ps3mediaserver to expose my photos collection which is distributed across multiple sub-folders. unfortunately the ps3 can only show a slideshow for a single folder at a time, hence i was wondering if there was a quick way to create a single folder containing symbolic links to all my pictures.
I want to make symbolic links for all them to my current directory /test2
I tried
But it failed. It seems like I can't make symbolic links for all the 5 files simultaneously.
Often times I need make symbolic links for multiple files with some common pattern (just like ".txt" here). I really hope to avoid making symbolic link for each of them one by one...
This all started when my Screenlets stopped working. Then I noticed that my update notification stopped too. So, to the command line I went to do and update hoping it was a recent update that needed to be fixed.
Code: sudo apt-get update && sudo apt-get upgrade
It appears that multiple python packages are trashed some how? Currently doing sudo apt-get -f install I get:
HTML Code: Reading package lists... Done Building dependency tree Reading state information... Done Correcting dependencies... Done The following packages were automatically installed and are no longer required: python-configglue python-ubuntuone-client libimobiledevice0 python-ubuntuone-storageprotocol python-twisted-web python-pyinotify libcouchdb-glib-1.0-2 .....
I have a webpage in html that uses <frameset> tag. One of the frames is a Table of Contents (toc.htm) that lists a series of images. The other frame is called 'canvas.htm'. My framset is laid out as follows:
The frameset is created properly and I can load the images manually (i.e. I can access the images from my browser and/or image editing tool). The problem comes when I attempt to access the images from the toc.htm frame. Instead of opening the image in the canvas.htm frame, a new window is displayed in my browser, instead of the image being displayed in the target window (canvas.htm). This happens on all of my browsers (firefox, safari, IE7/8 and Opera) on Windows, debian-linux and OS X 10.5/10.6.
If I change my src attribute (in the canvas frame) to toc.htm, I see the Table of Contents (toc.htm) displayed side-by-side until I click on the first drawing in the list. At this point, the frame 'behaves' half-arsed the way I want it to. I have searched on google till I am blue(er) in the face with no luck.
The LDFLAGS specifies the library path, which is specified as -L$(PROJECTPATH)/myproject/libs/liburl/ When I check this directory on my machine I see that the file: liburi.so.1 is indeed there.
I want that I click with the mouse on the video, it paused.I notice that there is "BaconVideoWidget" which I guess is the video rendering widget but it don't have signal named "clicked":
I'm trying to debug a program that I crosscompiled on a arm9. The crosscompiler uses . spec files to create RPM packages for the target system. The program compiles and runs correctly except when i run the program with gdb and then type list I get this message: Code: 1 main.c: No such file or directory. in main.c I made sure I compiled the program with CFLAGS=-g by putting this in the .spec file. when the application crosscompiles (I believe) it shows it compiled succesfully with the -g flags: Code: checking whether gcc accepts -g... (cached) yes
I'd like to create a target named "debug" or something similar which will use some special optimization flags useful when debugging (for example -ggdb). At the moment my makefile is neat (which I like) and looks like
I searched Google with "C++ puzzles" and some similar keywords. I found some *not* very satisfactory blogs. But I couldn't find any site dedicated to C/C++ puzzles !
Kindly list any excellent site or book dedicated for the above said purpose.
At my Uni, we use a web-based login for our internet connections. Its based off of Cisco, and every Wednesday night every computer on campus must re-enter their credentials to use the network.
Normally on my several computers I simply pull up the Terminal, point links to google.com using
Code:
And enter my credentials when Cisco redirects to the login page.
Literally, the process is
Code:
Then ENTER to accept the redirect, down arrow to skip over the logo image, USERNAME, ENTER, PASSWORD, ENTER, ENTER.
Naturally, this is EXTREMELY time consuming, as I have about 5 computers located around campus and must physically walk to the machines and login every single week.
My question is, How would I formulate a program that does the following;
1) checks for connectivity (i.e. is able to reach/resolve to the greater part of the internet) and
2) automatically fills in the credentials on the links login page?
Is it possible to change permissions on symbolic links using the c programming language or any other for that matter? Now, I know what you are thinking, so let me provide some background.I know permission are meaningless. I know that typically permissions are set to 777.The project that I am working on does the following. On HPUX systems, a c binary recreates missing links from a stored image of the filesystem, if they are missing. The problem is that the permissions are 700 when the links are restored (should be 777). The c method to restore the symbolic links is "symlink()" which takes as its argument the target and linkname.The client wants 777 on the links. I do not know why the permissions are different. I would like to know if I can change permissions on the link by code, changing the mode?
Is this a bug somewhere in HPUX 10,x and 11.x os or "symlink" c library method, who knows?There are groups of nodes running HPUX, for example groupA, groupB etc.The problems appears in groupA but not in groupB. Seems the nodes are configured differently.While I would love to know if this is a configuration issue, it appears that way to me, there would be little I could do about it. Politics you know, but that's okay, in time someone would listen.
I am trying to figure out a way to pull http links out of text files and then output the results in a log. The text files are in folders like this inside a source directory.