zeldor.biz

Linux, programming and more

Copyright © 2025
Log in

Sed replace text

June 21, 2010 by Igor Drobot Leave a Comment

Sed is available on all GNU/Linux distributions there is also a versions for Mac OS X too.
Typical usage of Sed are simple text replacement, testing for substrings, complex text replacement with regular expressions.

1
2
cat example.conf 
foo+bar=foo

cat example.conf foo+bar=foo

1
sed -i 's/foo/foo_bar/g' example.conf

sed -i 's/foo/foo_bar/g' example.conf

foo in file example.conf will be replaced with foo_bar

After replacement:

1
foo_bar+bar=foo_bar

foo_bar+bar=foo_bar

Start a dry run without changes, you will get a output about the changes (your file will stay untouched):

1
sed 's/192.168.0.1/nameserver.local/g' example.conf

sed 's/192.168.0.1/nameserver.local/g' example.conf

Append after match:

1
sed '/PATTERN_TO_SEARCH/a APPEND_ME' my_file

sed '/PATTERN_TO_SEARCH/a APPEND_ME' my_file

Remove line number 134 from file:

1
sed -i 134d /root/.ssh/known_hosts

sed -i 134d /root/.ssh/known_hosts

MAC OS X Section!

Sed inplace editing (-i) is a kind different on Mac OS X: in the normal UNIX case you will get a error:

1
2
id$ sed -i '/anna/ d' testfile
sed: 1: "testfile": undefined label 'estfile'

id$ sed -i '/anna/ d' testfile sed: 1: "testfile": undefined label 'estfile'

Soo this is the right syntax:

1
sed -i '' '/anna/ d' testfile

sed -i '' '/anna/ d' testfile

By the way, this will delete all lines which contains “anna” ;)

From the manpage: you risk corruption or partial content in situ-ations where disk space is exhausted, etc.

Filed Under: Linux Tagged With: Linux, regex, replace, sed

WordPress html line break

June 18, 2010 by Igor Drobot Leave a Comment

The only solution for line break I have found is to insert the following html code in the HTML Editor mode:

1
<br class="blank" />

<br class="blank" />

Filed Under: Linux Tagged With: HTML, Wordpress

Secure Apache2

June 17, 2010 by Igor Drobot 2 Comments

By default apache shows on each directory listing, error or non existing page etc. apache version, OS Version and some apache modules in the bottom of your site.

Attackers can use this information to their advantage when performing an attack.
I describe a little bit how to secure apache2, to prevent the showing of apache version and server strings.

1
vim /etc/apache2/conf.d/security

vim /etc/apache2/conf.d/security

Configuration should be:

2
3
4
ServerTokens Prod
ServerSignature Off
TraceEnable Off

ServerTokens Prod ServerSignature Off TraceEnable Off

Restart apache:

1
/etc/init.d/apache2 restart

/etc/init.d/apache2 restart

Filed Under: HTTP, Linux, Networking Tagged With: apache2, Debian, HTTP, security, TRACE, webserver

Alternative Git logo and favicon

June 16, 2010 by Igor Drobot Leave a Comment

I came up with some pretty nice logos and favicons for GIT:


Favicon: ()

The default logo and favicon for GIT/gitweb are GIT and gitweb


Some other icons:
Git LogoGit Cube

Filed Under: Linux Tagged With: GIT, git logo

GIT Version Control System

June 16, 2010 by Igor Drobot Leave a Comment

GIT is one of the best systems for version control. I don’t want talk about benefits or other things now. I tell you how to work with GIT and do really useful things with it. Very simple installation and a list of frequently used commands:







Install GIT: (You see It’s very easy)

1
apt-get update &amp;&amp; apt-get install git-core

apt-get update &amp;&amp; apt-get install git-core

Create new git repository:

2
git init

git init

Add all changes to repository:

3
git add .

git add .

Consolidation of all changes:

4
git commit -a

git commit -a

Consolidation of all changes with commit message:

5
git commit -a -m "Commit Message"

git commit -a -m "Commit Message"

Revert last commit:

6
git reset --soft HEAD^

git reset --soft HEAD^

Current working directory status:

7
git status

git status

Diff since last commit:

8
git diff

git diff

Add link to remote repository:

9
git remote add origin ssh://id@gitcher/opt/repository

git remote add origin ssh://id@gitcher/opt/repository

Remove link to remote repository:

10
git remote rm origin

git remote rm origin

Get all new versions from source(remote repository):

11
git pull origin master

git pull origin master

Push all new changes to source(remote repository):

12
git push origin master

git push origin master

Create new working tree(branch):

13
git branch branch_name

git branch branch_name

Change between branches:

14
git checkout branch_name

git checkout branch_name

Merge braches:

15
git merge branch_name

git merge branch_name

Delete branch:

16
git branch -d branch_name

git branch -d branch_name

Remove branch force:

17
git branch -D branch_name

git branch -D branch_name





And more complicated examples
Create local working space and push all changes to remote repository:

1
2
3
4
5
6
git init
touch Initial_File
git add Initial_File
git commit -a -m "Initial commit"
git remote add origin ssh://id@gitcher/opt/repository
git push origin master

git init touch Initial_File git add Initial_File git commit -a -m "Initial commit" git remote add origin ssh://id@gitcher/opt/repository git push origin master



Create brach, edit and merge:

1
2
3
4
5
6
7
8
9
10
git init
git branch test
git checkout test
# ...
# add changes
# ...
git commit -a -m "Branch commit"
git checkout
git merge test
git branch -d test

git init git branch test git checkout test # ... # add changes # ... git commit -a -m "Branch commit" git checkout git merge test git branch -d test

Messed up the last commit message? This will let you re-enter it:

1
git commit --amend

git commit --amend

GIT Tagging
for example you want to release a new version of your project:

1
git tag -a v0.1 -m 'Intitial tag vesrion 0.1'

git tag -a v0.1 -m 'Intitial tag vesrion 0.1'

Clone remote repositoty

1
git clone id@gitche:scripts.git

git clone id@gitche:scripts.git

Filed Under: Linux Tagged With: Control, create branch, create repository, Debian, GIT, git commit, Linux

  • « Previous Page
  • 1
  • …
  • 69
  • 70
  • 71
  • 72
  • 73
  • 74
  • Next Page »
Yeaaah Cookie! We use cookies to ensure that we give you the best experience on our website. If you continue to use this site we will assume that you are happy with it.Ok