小编alb*_*ttx的帖子

带参数的ZSH别名

我正在尝试为我的简单git add/commit/push创建一个带参数的别名.

我已经看到函数可以用作别名所以我尝试但我没有成功..

在我之前:

alias gitall="git add . ; git commit -m 'update' ; git push"
Run Code Online (Sandbox Code Playgroud)

但我希望能够修改我的提交:

function gitall() {
    "git add ."
    if [$1 != ""]
        "git commit -m $1"
    else
        "git commit -m 'update'"
    fi
    "git push"
}
Run Code Online (Sandbox Code Playgroud)

(我知道这是一个可怕的git练习)

bash shell alias zsh zshrc

57
推荐指数
4
解决办法
3万
查看次数

Python打印环境变量内存地址

是否可以打印我的环境变量内存地址?

随着gdb-peda我有一个内存地址看起来像0xbffffcd6searchmem,我知道这是正确的方式.(0xbfff????)但是gdb使用其他一些环境变量移动了堆栈.

我想用我的python脚本来获取这个地址然后做我的技巧并包含我的shellcode.

我试过(使用Python):

print hex(id(os.environ["ENVVAR"]))
print memoryview(os.environ["ENVVAR"])

# output :
# 0xb7b205c0L
# <memory at 0xb7b4dd9c>
Run Code Online (Sandbox Code Playgroud)

使用Ruby:

puts (ENV['PATH'].object_id << 1).to_s(16)
# output :
# -4836c38c
Run Code Online (Sandbox Code Playgroud)

如果有人有想法,使用python或ruby.

ruby python memory environment-variables

10
推荐指数
1
解决办法
1638
查看次数

CoreOS:只读文件系统

将文件移动到/usr/local/bin它时说:

mv: inter-device move failed: 'kubectl' to '/usr/local/bin/kubectl';
unable to remove target: Read-only file system
Run Code Online (Sandbox Code Playgroud)

我已经试过了 chmod

如何使CoreOS目录可写?

readonly coreos kubernetes

7
推荐指数
1
解决办法
7398
查看次数

Docker rails mongodb NoServerAvailable

我正在用 3 个 docker 构建一个项目。

  • 带有 Rails 的 API
  • 网站角度/webpack
  • 数据库与 mongodb

所以我有docker-compose能力处理一切。

我的问题是当我想为我的数据库做种时,我有一个错误:

Mongo::Error::NoServerAvailable: No server is available matching  preference: #<Mongo::ServerSelector::Primary:0x47121755943460 tag_sets=[] server_selection_timeout=30 local_threshold=0.015>
Run Code Online (Sandbox Code Playgroud)

我尝试了很多东西,我目前在 OSX 上使用Docker 本机beta 版本

version: '2'
services:
    web:
        build: web/
        ports:
            - "80:8080"
        links:
            - api
        depends_on:
            - api
        volumes:
            - ./web:/app
    api:
        build: api/
        command: rails s -p 3000 -b '0.0.0.0'
        volumes:
            - ./api:/app
            - ./api:/app/tmp/pids
        links:
            - db
        #depends_on:
            #- db
        ports:
            - "3000:3000" …
Run Code Online (Sandbox Code Playgroud)

ruby ruby-on-rails mongodb docker docker-compose

6
推荐指数
1
解决办法
2345
查看次数

struct ip和struct iphdr之间的区别

我试图了解网络是如何工作的,我正在做一些测试,发送一些软件包......无论如何

我的观点是,我找不到"protocol" structure和之间的真正区别"protocol header" structure.

对于ip结构,它们都大小为20个字节.但例如:

  • struct ip并且struct iphdr大小为20个字节
  • struct icmp 大小为28个字节
  • struct icmphdr 大小为8个字节

我猜这struct icmp包括一个struct ip/iphdr?

我所看到的每个协议都有相同的结构. struct udp/ struct udphdr,

是否链接到IP_HDRINCL设置setsockopt()

所以我的问题是它们之间真正的区别是什么?而当使用好的.

ip和iphdr结构:

struct iphdr {
    #if defined(__LITTLE_ENDIAN_BITFIELD)
        __u8    ihl:4,
                version:4;
    #elif defined (__BIG_ENDIAN_BITFIELD)
        __u8    version:4,
                ihl:4;
    #else
        #error  "Please fix <asm/byteorder.h>"
    #endif
         __u8   tos;
         __u16  tot_len;
         __u16  id;
         __u16  frag_off;
         __u8   ttl;
         __u8   protocol;
         __u16  check;
         __u32  saddr; …
Run Code Online (Sandbox Code Playgroud)

c ip networking icmp

6
推荐指数
1
解决办法
1万
查看次数

Angular通过另一个组件获得新范围

我正在构建一个基于组件的应用项目,角度为1.5.5

我正在使用d3js创建一些,.floating-node并为每个我创建一个新的$ scope并附加在已编译的组件中.

这部分代码如下:

    nodeEnter.each(() => {
        let childScope = this.$scope.$new();
        childScope.test = "test";
        let compiled = this.$compile('<mycomponent></mycomponent>')(childScope);
        (this.mainContainer).append(compiled);
    });
Run Code Online (Sandbox Code Playgroud)

这部分代码完美无缺.

这是 mycomponent

export default class Mycomponent {
    constructor($scope) {
        console.log($scope.test);         // undefined
        console.log($scope.$parent.test); // test
    }
}
Mycomponent.$inject = ["$scope"];
Run Code Online (Sandbox Code Playgroud)

但当我进入我的mycomponent组件.我无法做到正确$scope.

我查了一下$id,明白它childScope.$id是在Mycomponent $scope.$id += 1

我知道我可以通过$scope.$parent但是我会创造出不受欢迎的东西$scope,并且它在循环中并没有真正受到重视.

那么我怎么能得到相同的$scope

javascript components angularjs ecmascript-6 angularjs-scope

5
推荐指数
1
解决办法
133
查看次数

使用mkvtoolnix命令行拆分mkv文件

我找到了mkvtoolnix命令行,用brew安装.但我没有发现用命令行分割电影,我只发现了GUI.

安装创建4二进制文件mkvextract mkvinfo mkvmerge mkvpropedit.

解决方案

mkvmerge --split 3G -o "film.mkv" ./mymkvfile

unix macos movie mkv

4
推荐指数
1
解决办法
4969
查看次数

交换两个字符串(Golang)

我目前正在学习Golang,我决定编写一些简单的算法来学习语法.我希望它不是已经答案,但我没有找到它..

我有交换字符串的问题

func swap(str1, str2 string) {
    /*
     * Also possible :
     * str1, str2 = str2, str1
     */
    // str1, str2 = str2, str1
    tmp := str1
    str1 = str2
    str2 = tmp
}

func main() {
    a := "World !"
    b := "Hello"
    swap(a, b)
    fmt.Printf("a=%s\nb=%s\n", a, b)
}
Run Code Online (Sandbox Code Playgroud)

为什么这段代码不起作用?

go

0
推荐指数
1
解决办法
856
查看次数

关闭陈的僵局

我想了解为什么这种情况会出现僵局以及为什么它不在另一种情况下.

如果我关闭goroutine内部的通道,它工作正常,但如果我关闭它后WaitGroup.Wait()会导致死锁.

package main

import (
    "fmt"
    "io/ioutil"
    "os"
    "sync"
)

var (
    wg    = sync.WaitGroup{}
    links = make(chan string)
)

func rec_readdir(depth int, path string) {
    files, _ := ioutil.ReadDir(path)
    for _, f := range files {
        if symlink, err := os.Readlink(path + "/" + f.Name()); err == nil {
            links <- path + "/" + symlink
        }
        rec_readdir(depth+1, path+"/"+f.Name())
    }
    if depth == 0 {
        wg.Done()
        // close(links) // if close here ok
    }
}

func …
Run Code Online (Sandbox Code Playgroud)

concurrency deadlock go

0
推荐指数
1
解决办法
83
查看次数

C中的这个操作是什么?

我开始使用termcaps,我看到了这种操作.

term.c_lflag &= ~(ICANON);

我知道&=是一个binary AND,我不是很舒服.

为什么不简单地使用=或制作一个#define,又&= ~做什么?

c binary termcap

-6
推荐指数
1
解决办法
91
查看次数